jQuery:如果仅选中多个值,则求和 [英] jQuery : Sum multiple select value if only selected
本文介绍了jQuery:如果仅选中多个值,则求和的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
如果仅选中一项,如何求和多个选定项的值.从示例中,我想获取"X12SO + X13SO = 30"的值
How can I sum the value of selected multiple item if only the item is selected. From the example I wanna get the value of "X12SO+X13SO=30"
let sum = 0;
$("select[name='myselect[]'] option").each(function(){
sum += +this.value.split("|")[1];
});
$("input[name='myresult']").val(sum);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<select multiple class="form-control" id="multipleSelect" name="myselect[]">
<option value="X12SO|10">X12SO</option>
<option value="X13SO|20">X13SO</option>
<option value="X14SO|30">X14SO</option>
<option value="X15SO|40">X15SO</option>
<option value="X16SO|50">X16SO</option>
</select>
<input type="text" name="myresult">
推荐答案
使用onchange
检测所选选项是否已更改.
Use onchange
to detect if the selected options changed.
let sum = 0;
$("#multipleSelect").on("change", function(){
sum = 0;
// if there are no options being selected, it would be an empty array[]
// and sum each splited value
($(this).val() || []).map(v=>sum += +v.split("|")[1])
$("input").val(sum);
})
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<select multiple class="form-control" id="multipleSelect" name="myselect[]">
<option value="X12SO|10">X12SO</option>
<option value="X13SO|20">X13SO</option>
<option value="X14SO|30">X14SO</option>
<option value="X15SO|40">X15SO</option>
<option value="X16SO|50">X16SO</option>
</select>
<input type="text" name="myresult">
这篇关于jQuery:如果仅选中多个值,则求和的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文