當用戶選中一個複選框時,我需要更新我的'calculated_price'值。 alert()工作和計算正確,但我不知道它爲什麼只顯示「0」,而不是改變。將變量值從if語句傳遞到if/else之外
$(document).ready(function() {
//Global Configurations.
var calculated_price = 0;
var final_price = "قیمت نهایی برابر است با " + calculated_price + " تومان ";
// Menu Items.
var cbSelector = $("[name='cb[]']");
cbSelector.change(function() {
if (this.checked){
var currentCBSelected = $(this);
var currentCBValue = parseInt(currentCBSelected.val());
var previousNSelected = $(this).prev("input");
var previousNValue = parseInt(previousNSelected.val());
previousNSelected.css("visibility","visible");
calculated_price += currentCBValue * previousNValue;
}
else {
// Do somethings.
}
});
// Calculated Price.
$("#calculated_price").html(final_price);
});
這裏是我的index.html文件將被選中複選框顯示號碼輸入,它們的值可以改變(所以calculated_price必須改變)
<!-- Page Logo -->
<div>
<a href="#time_picker"><img id="page_logo" src="img/logo.png"></a>
</div>
<!-- Time Picker -->
<div id="time_picker">
<div id="time_picker_in">
<p>زمان ورود: </p>
</div>
<div id="time_picker_out">
<p>زمان خروج: </p>
</div>
</div>
<!-- Menu Items -->
<div>
<ul id="menu_items">
<li>
<input type="number" name="n[]" value="1" class="num_input"/>
<input type="checkbox" name="cb[]" value="12000" />
<label for="text1">چای و ساید کیک</label>
</li>
<li>
<input type="number" name="n[]" value="1" class="num_input"/>
<input type="checkbox" name="cb[]" value="5000" />
<label for="text2">چای سیاه</label>
</li>
<li>
<input type="number" name="n[]" value="1" class="num_input"/>
<input type="checkbox" name="cb[]" value="7000" />
<label for="text3">چای سبز</label>
</li>
<li>
<input type="number" name="n[]" value="1" class="num_input"/>
<input type="checkbox" name="cb[]" value="7000" />
<label for="text4">چای و خرما</label>
</li>
<li>
<input type="number" name="n[]" value="1" class="num_input"/>
<input type="checkbox" name="cb[]" value="7000" />
<label for="text5">چای و نبات</label>
</li>
<li>
<input type="number" name="n[]" value="1" class="num_input"/>
<input type="checkbox" name="cb[]" value="7000" />
<label for="text6">چای و دارچین</label>
</li>
<li>
<input type="number" name="n[]" value="1" class="num_input"/>
<input type="checkbox" name="cb[]" value="15000" />
<label for="text7">آبمیوه(پرتقال،هندوانه،طالبی)</label>
</li>
<li>
<input type="number" name="n[]" value="1" class="num_input"/>
<input type="checkbox" name="cb[]" value="15000" />
<label for="text8">هات چاکلت</label>
</li>
<li>
<input type="number" name="n[]" value="1" class="num_input"/>
<input type="checkbox" name="cb[]" value="15000" />
<label for="text9">نسکافه</label>
</li>
<li>
<input type="number" name="n[]" value="1" class="num_input"/>
<input type="checkbox" name="cb[]" value="15000" />
<label for="text10">کاپوچینو</label>
</li>
<li>
<input type="number" name="n[]" value="1" class="num_input"/>
<input type="checkbox" name="cb[]" value="15000" />
<label for="text11">شکلات گلاسه</label>
</li>
<li>
<input type="number" name="n[]" value="1" class="num_input"/>
<input type="checkbox" name="cb[]" value="15000" />
<label for="text12">سالاد روز</label>
</li>
<li>
<input type="number" name="n[]" value="1" class="num_input"/>
<input type="checkbox" name="cb[]" value="10000" />
<label for="text13">سیب زمینی</label>
</li>
<li>
<input type="number" name="n[]" value="1" class="num_input"/>
<input type="checkbox" name="cb[]" value="15000" />
<label for="text14">غذای روز کودک</label>
</li>
<li>
<input type="number" name="n[]" value="1" class="num_input"/>
<input type="checkbox" name="cb[]" value="10000" />
<label for="text15">بستنی(12 اسکوپ)</label>
</li>
</ul>
</div>
<!-- White Space -->
<div id="white_space"></div>
<!-- Calculated Price -->
<div id="calculated_price"></div>
也添加您的網頁代碼 –
您計算後似乎無法顯示該值。如果您只顯示0的初始值並且從不更新顯示,那麼它只會顯示0. – David
您需要在*中添加** $(「#calculated_price」)。html(final_price); ** * *更改** –