私は、顧客が望む料理を選ぶためにオンラインフォームを作成しようとしていました。しかし、私はJavascriptでのみ動作するいくつかの問題を抱えています。ライブ計算 - ショッピングカートin Javascript
私はそのようなことやっていた考えていたもの:
- 料理が
- ことを行う
- はその後、皿当たりの合計を計算し、ドロップダウンメニュー
- の値を取得するにチェックされている場合をすべての小皿のために
- 次に
calculateTotal()
の機能では、すべての小計を合計します。
function priceDish1() {
var quantity = 0;
var totalPriceDish1 = 0;
var dishPrice = 19;
var quantity = document.getElementById("quantityDish1").value;
var theDish1 = document.getElementById("dish1");
if (theDish1.checked == true) {
totalPriceDish1 = quantity * dishPrice;
}
return totalPriceDish1;
}
function priceDish2() {
var quantity = 0;
var totalPriceDish1 = 0;
var dishPrice = 19;
var quantity = document.getElementById("quantityDish1").value;
var theDish1 = document.getElementById("dish1");
if (theDish1.checked == true) {
totalPriceDish1 = quantity * dishPrice;
}
return totalPriceDish1;
}
function calculateTotal() {
var theTotalPrice = totalPriceDish1() + totalPriceDish2();
document.getElementById('totalPrice').innerHTML = "Total $" + theTotalPrice;
}
<div id="div">
<form action="" id="priceForm">
<label class="dishes"><input type="checkbox" id="dish1" value="number1"> Dish Name 1</label><br>
<label class="labelQuantPeople">Number of Dishes</label><br>
<select id="quantityDish1" name='numberPeoplel1' onchange="calculateTotal()">
<option class="quantDish1" value="0">0</option>
<option class="quantDish1" value="1">1</option>
<option class="quantDish1" value="2">2</option>
<option class="quantDish1" value="3">3</option>
<option class="quantDish1" value="4">4</option>
<option class="quantDish1" value="5">5</option>
<option class="quantDish1" value="6">6</option>
<option class="quantDish1" value="7">7</option>
<option class="quantDish1" value="8">8</option>
<option class="quantDish1" value="9">9</option>
<option class="quantDish1" value="10">10</option>
</select><br>
<label class="dishes"><input type="checkbox" id="dish2" value="number2"> Dish Name 2</label><br>
<label class="labelQuantPeople">Number of Dishes</label><br>
<select id="quantityDish2" name='numberPeoplel2' onchange="calculateTotal()">
<option class="quantDish2" value="1">1</option>
<option class="quantDish2" value="2">2</option>
<option class="quantDish2" value="3">3</option>
<option class="quantDish2" value="4">4</option>
<option class="quantDish2" value="5">5</option>
<option class="quantDish2" value="6">6</option>
<option class="quantDish2" value="7">7</option>
<option class="quantDish2" value="8">8</option>
<option class="quantDish2" value="9">9</option>
<option class="quantDish2" value="10">10</option>
</select><br>
</form>
</div>
<p id="totalPrice"></p>
事前に感謝します!
注意JavaScriptで価格を計算上の(と浮動小数点演算は正確ではないため、十分に確立されたライブラリの使用を検討することをお勧めします。 (tldr 'theTotalPrice'は時々間違っています。) –