У меня есть раскрывающийся список с несколькими вариантами выбора и текстовое поле. Пользователь может выбрать или отменить выбор любого элемента из списка. Я хочу добавить все выбранные элементы из списка и показать общее значение в текстовом поле, и когда элемент отменен из списка, значение должно быть вычтено из списка. Однако я не знаю, как мне вычесть значение из 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>
Спасибо