Hello Guys我无法解决这个问题我不知道问题在哪里?
我希望在更改
时更新和修改旧值<select id="ac">
<option> 1 </option>
<option> 2 </option>
<option> 3 </option>
<option> 4 </option>
</select>
JS
$('select').change(function(){
var sum = 0;
$('select :selected').each(function() {
sum += Number($(this).val());
});
$("#sum").html(sum);
例如,当我将其更改为4时,我得到1它给了我四个,但我希望它是1 + 4 = 5我该如何解决这个问题?
以下是非工作演示:http://jsfiddle.net/ugokay/Fmrn2/
答案 0 :(得分:0)
请试试这个 JSFIDDLE
var sum = 0;
$('select').change(function(){
sum += parseInt($(this).val());
$("#sum").html(sum);
});
你不需要$('select:selected')。每个(function()也因为你使用下拉列表只有一个选定的元素
答案 1 :(得分:0)
简单,将var移出函数,目前每次更改值时都会重置它(请阅读jQuery文档)。 像这样:
var sum=0;
$('select').change(function() {
$('select :selected').each(function() {
sum =sum+Number($('select').val());
});
$("#sum").html(sum);
});
继承人JSFiddle。