Калькулятор с радиокнопками Срочно
Добрый вечер, дорогие форумчане!
Пытался написать простейший калькулятор с радиокнопками, но заплутал и ищу помощи) Раньше были чекбоксы, заменил их на радиокнопки, смог добиться чтобы можно было выбрать сразу обе кнопки - сумму считает. Но при снятии флажка ни в какую не хочет убавлять сумму назад. Делюсь ссылкой на код в JSFiddle, очень надеюсь на вашу помощь) |
AaronWolfsberg,
всем кнопкам присвоить один класс,цену перенести в value , добавить форму, и по change формы выбирать все класс:checked и в цикле формировать сумму всех выбранных кнопок. |
Не до конца понимаю насчет формы и "по change формы":no: :blink:
|
Цитата:
|
Цитата:
|
По сути всё, что мне нужно - чтобы "калькулятор" при нажатии на левую радиокнопку выдавал число 170, на правую 680. В случае если обе радиокнопки активны - складывал сумму. Ну и при отключении копки "откатывал" к прошлому числу.
|
Нет, нет мне необходимо чтобы внешний вид оставался именно таким
|
Я извиняюсь, радиокнопки чтобы выбирать сразу две кнопки???
Зачем тогда радиокнопки? Почему не чекбоксами? |
В данный момент код Java предназначен для вычисления данных из чекбоксов, что нужно поменять чтобы он считал данные из радиокнопок?
Надеюсь смог кк-то объяснить вот код var Calculator = { selectedGroups: [], sum: 0, isGroupSelected: function(groupId) { return this.selectedGroups.indexOf(groupId) != -1; }, addSelected: function(groupId, amount) { if (!this.isGroupSelected(groupId)) { this.changeSum(amount); } this.selectedGroups.push(groupId); }, removeSelected: function(groupId, amount) { if (!this.isGroupSelected(groupId)) { return; } var groupIndex = this.selectedGroups.indexOf(groupId); this.selectedGroups.splice(groupIndex, 1); if (!this.isGroupSelected(groupId)) { this.changeSum(-amount); } }, onSelect: function(groupId, amount, elem) { if (elem.checked) { this.addSelected(groupId, amount); } else { this.removeSelected(groupId, amount); } }, changeSum: function(amount) { this.sum += amount; this.showSum(); }, showSum: function() { document.getElementById ('r').innerHTML = this.sum; } } |
Цитата:
|
Часовой пояс GMT +3, время: 21:53. |