我正在努力理解为什么总和没有更新。
这是我的下拉列表:
echo "<select name='CPU'>";
while ($row = mysqli_fetch_array($result)) {
if($row['id']==1)
echo "<option value='" . $row['id'] . "'a='" . $row['productprice']
. "'>" . $row['productname'] . "</option>";
else if($row['productstock']>0 && $row['id']>1)
echo "<option value='" . $row['id'] . "'a='" . $row['productprice']
. "' >" . $row['productname'] . " Price:" . $row['productprice'] . "</option>";
}
echo "</select>";
这是我更新总和的功能:
$('select').change(function(){
var sum = 0;
$('select :selected').each(function() {
sum += Number($(this).attr("a"));
});
$("#sum").html(sum);
//
});
答案 0 :(得分:0)
每次致电
$('select').change(function(){
您正在重新初始化var sum = 0;
,这就是它未被添加到之前值的原因。您需要在页面加载时取出初始化并初始化一次。
$(document).ready(function(){
var sum = 0;
$('select').change(function(){
$('select :selected').each(function() {
sum += Number($(this).attr("a"));
});
$("#sum").html(sum);
})
});
<强> >>>Demo<<< 强>