如何查找多个选择的选定选项的总和

How to find the sum of multiple select's selected options?

本文关键字:选项 选择 何查找 查找      更新时间:2023-09-26
<select multiple name="item" style="width: 225px;" action="post" id="mySelect" onChange="document.getElementById('selectedValue').innerHTML = this.value;">
<option value="10">One
<option value="20">Two
<option value="30">Three
<option value="40">Four
<option value="50">Five
<option value="60">Six
</select>
<p>Total: <b><span id="selectedValue"></span></b></p>

如果选择了多个项目,我正在尝试显示总价,但它似乎对我不起作用。这可能是一些简单的事情,但我无法理解。任何帮助非常感谢。

value属性存储最后选择的选项的值,由于您有一个多select元素,因此您可以循环访问HTMLSelectElement对象的selectedOptions集合:

document.getElementById('mySelect').addEventListener('change', function() {
    var total = 0,
        selected = this.selectedOptions,
        l = selected.length;
    for (var i = 0; i < l; i++) {
       total += parseInt(selected[i].value, 10);
    }
    // ...       
});

http://jsfiddle.net/qoft7mre/

onChange="document.getElementById('selectedValue').innerHTML = parseInt(document.getElementById('selectedValue').innerHTML || 0) + parseInt(this.value);"

这不是你真正想要的,但你可以这样总结。