【发布时间】:2018-01-21 07:11:31
【问题描述】:
我有一个多选下拉列表和一个文本框。用户可以从列表中选择或取消选择任何元素。我想从列表中添加所有选定的项目并在文本框中显示总值,当从列表中取消选择项目时,应从列表中减去该值。但是,当用户取消选择某个项目时,我不知道如何从totalPrice 中减去该值。
<input id="txtPrice" type="text" value="" class="form-control" />
<select id="DDLSkills" multiple name="selValue" class="selectpicker form-control" data-max-options="2">
<option value="10">Ten</option>
<option value="2">Two</option>
<option value="4">Four</option>
</select>
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-select/1.7.5/css/bootstrap-select.min.css">
目前我可以添加所有值并将其显示在文本框中。但是,当我选择了两项并取消选择一项时,totalPrice 的值仍然会上升。
<script src="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-select/1.12.4/js/bootstrap-select.min.js"></script>
<script>
$(document).ready(function () {
var totalPrice = 0;
$('#DDLSkills').change(function () {
var value = $(this).val();
if ($(this).val() == null) {
totalPrice = 0;
document.getElementById('txtPrice').value = 0;
}
if (value != null)
{
for (var i = 0; i < value.length; i++) {
if (jQuery.inArray(value[i], value) != -1) {
totalPrice += parseInt(value[i]);
document.getElementById('txtPrice').value = totalPrice;
}
}
}
});
})
</script>
谢谢
【问题讨论】:
标签: jquery multi-select