Пишу калькулятор для расчета цены установки, возник вопрос, как посчитать сумму всех
Пишу калькулятор для расчета цены установки, возник вопрос, как посчитать сумму всех выбранных параметров, у меня много выпадающих списков? Также интересует, как можно скрыть определенные данные в списке, при выборе количества цилиндров в первом Select чтобы во втором Select скрылись определенные параметры? Изначально пробовал вот такой функцией :
function GetData() { // получаем индекс выбранного элемента var selind = document.getElementById("SelectMyLove").options.selectedIndex; var val= document.getElementById("SelectMyLove").options[selind].value; alert( "Value= " + val); } Но успехом это не закончилось, подскажите, пожалуйста, как можно посчитать <div class="cf-left-col"> <div class="form-group"> <select class="input-md form-control"> <option>Выберите количество цилиндров</option> <option value="1">4 цилиндра</option> <option value="2">6 цилиндров</option> <option value="3">8 цилиндров</option> <option value="4">ГАЗель</option> </select> </div> <div class="form-group"> <select class="input-md form-control"> <option>Выберите оборудование</option> <!--4 цилиндра--> <option value="13000">OMVL SAVER-4 (Италия) - Лидер продаж в РФ</option> <option value="11700">Digitronic – (Польша)</option> <option value="7000">Atiker (Турция) – бюджетный комплет оборудования</option> <option value="12400">BRC- (Италия), Оборудование премиум класса)</option> <!--6 цилиндра--> <option value="17500">OMVL -6 (Италия), Лидер продаж в РФ</option> <option value="20800">OMVL -6 OBD (Италия) , Премиум линейка</option> <option value="28400">BRC- (Италия), Оборудование премиум класса</option> <!--8 цилиндра--> <option value="23000">OMVL -8 OBD (Италия) - Премиум линейка</option> <option value="33600">BRC- (Италия), Оборудование премиум класса</option> </select> </div> <div class="form-group"> <select class="input-md form-control"> <option>Выберите объем баллона</option> <option value="11275.29">Баллон (Метан) 50 л (219*1640) мм</option> <option value="29055.90">Баллон (Метан) 100 л( 425*1000) мм</option> <option value="25876.38">Баллон (Метан) 90 л (425*940) мм</option> <option value="4240.00">Баллон цилиндрический 100 л (399*895)</option> <option value="4310.00">Баллон 100 л (400*912)</option> <option value="4240.00">Баллон 103 л (356*1110) </option> <option value="4100.00">Баллон 105 л (376*1064)</option> <option value="4360.00">Баллон 130 л (399*1144) </option> <option value="4590.00">Баллон 130 л (400*1165)</option> <option value="7550.00">Баллон цилиндрический 200 л (498*1136) </option> <option value="2070.00">Баллон цилиндрический 35 л (241*880)</option> <option value="2520.00">Баллон цилиндрический 50 л (299*798) </option> <option value="2460.00">Баллон цилиндрический 50 л (300*796)</option> <option value="3240.00">Баллон цилиндрический 51 л (356*600) </option> <option value="2770.00">Баллон цилиндрический 60 л (299*948) </option> <option value="3070.00">Баллон цилиндрический 60 л (315*863) </option> <option value="2630.00">Баллон цилиндрический 60 л (300*945)</option> <option value="3000.00">Баллон цилиндрический 60 л (315*866)</option> <option value="2840.00">Баллон цилиндрический 65 л (299*1023) </option> <option value="4150.00">Баллон цилиндрический 80 л (356*900) </option> <option value="3520.00">Баллон тор внешняя горловина 42 л НЗГА (600*200)</option> <option value="5900.00">Баллон тор внешняя горловина 50 л (650*200) </option> <option value="4100.00">Баллон тор внешняя горловина 54 л НЗГА (630*220)</option> <option value="4710.00">Баллон тор внешняя горловина 60 л (630*250)</option> <option value="7550.00">Баллон тор внешняя горловина 62 л (720*210) </option> <option value="7500.00">Баллон тор внешняя горловина 74 л (720*230) </option> <option value="7900.00">Баллон тор внешняя горловина 81 л (720*250) </option> <option value="8350.00">Баллон тор внешняя горловина 98 л НЗГА (720*300)</option> <option value="3540.00">Баллон тор внутр. горловина 42 л НЗГА (600*200)</option> <option value="3990.00">Баллон тор внутр. горловина 47 л (600*220) </option> <option value="3730.00">Баллон тор внутр. горловина 53 л (630*225) </option> <option value="6620.00">Баллон тор внутр. горловина 54 л НЗГА (720*180)</option> <option value="6210.00">Баллон тор внутр. горловина 55 л (650*225) </option> <option value="8100.00">Баллон тор полнотелый 85 л (720*250) </option> <option value="8300.00">Баллон тор полнотелый 93 л (720*270) </option> <option value="8300.00">Баллон тор полнотелый 94 л (720*270) </option> </select> </div> </div> <div class="cf-right-col"> <div class="form-group"> <select multiple class="form-control"> <option value="300">ВЗУ</option> <option value="1000">Сенсор уровня газа</option> <option value="1500">Евромультиклапан</option> <option value="1500">Обтяжка карпетом</option> <option value="500">Доп фильтр тонкой очистки</option> </select> </div> <div class="form-tip pt-20"> <i class="fa fa-info-circle"></i> Для множественного выбора зажмите клавишу CTRL </div> </div> |
Цитата:
Цитата:
var selind = document.getElementById("SelectMyLove").selectedIndex; Цитата:
var val= document.getElementById("SelectMyLove").value; Это если нет мультиселекта... Т.е. возможен только одиночный выбор в селекте. Но в твоем случае у селелектов нет никакого ИД. :no: Есть только классы. |
ksa, Спасибо это я поправил, а как сделать чтобы он считал информацию от всех селектов?
Пошел другим способом, решил писать так $('select').change(function(){ var sum = 0; $('select :selected').each(function() { sum += Number($(this).val()); }); //$("#sum").html(sum); console.log(sum); }); Но теперь в консоле он просто выдает NaN |
var s = $('select').change(function(){ var sum = 0; s.each(function() { sum += Number(this.value) || 0; }); //$("#sum").html(sum); console.log(sum); }); |
Цитата:
Сделай простой пример с одним селектом... Научись с ним работать. Потом можно добавить еще селекты, но по одному за раз и научиться работать с ними... А ты кидаешься делать сразу то, в чем совершенно не понимаешь. :nono: Так ты долго будешь блуждать в темноте. Так же нужно учиться тестировать то, что ты написал... Смотреть с чем ты имеешь дело... Программа это правильная последовательность определенных команд и операций, а не случайный текст из английских слов... |
Цитата:
Цитата:
|
Часовой пояс GMT +3, время: 15:58. |