Рассчитать общую цену на основе data-price и видимого div?
Я застрял с скрыть / показать div и подсчета общей стоимости. Допустим, у меня есть divA и divB. Теперь, когда отображается div A, отображаются два div с опциями меню и атрибутами data-price. Это работает, когда я жестко кодирую элементы var $, но когда divB видим, мне нравится, что элементы var $ доступны только для чтения divB1, см. Код
var $elements = $('#divA1, #divA2');
var $elements = $('#divB1');
$elements.on('change', function() {
var $selected = $elements.children(":selected");
var sum = 0;
$selected.each(function() {
sum += $(this).data('price');
});
$('#total_price').html('€'+sum);
});
1 ответ
Ваша ошибка в строке 2, вы переделываете переменные $elements,
var $elements = $('#divA1, #divA2');
var $elements_b = $('#divB1');
if ($elements_b.length != 0) {
$elements = $elements_b;
}
$elements.on('change', function () {
var $selected = $elements.children(":selected");
var sum = 0;
$selected.each(function () {
sum += $(this).data('price');
});
$('#total_price').html('€' + sum);
});