Задать вопрос
@sergyo007
Отличный IT-шник и хреновый программист

Как сделать суммирование checkbox-ами с изначальным значением?

Проблема в скрипте который бы брал исходную цену товара, через id или class и при выбранных чекбоксах суммировал выводя либо там же в тексте либо в кнопку заказа через id или class, пытаюсь все это сделать по адресу https://jsfiddle.net/sergyo007/k5bb1pde/65/
<form action="" id="our-form">
  <div>
    <label for="item-1">item 1</label>
    <input type="checkbox" name="item-1" id="item-1" value="10"> 
  </div>
  <div>
    <label for="item-2">item 2</label>
    <input type="checkbox" name="item-2" id="item-2" value="15"> 
  </div>
  <div>
    <label for="item-3">item 3</label>
    <input type="checkbox" name="item-3" id="item-3" value="20"> 
  </div>
  <div>
    <label for="item-4">item 4</label>
    <input type="checkbox" name="item-4" id="item-4" value="25">
  </div>
  <div>
    <label for="item-5">item 5</label>
    <input type="checkbox" name="item-5" id="item-5" value="30"> 
  </div>
</form>
<!--div>
  Checked count: <span id="checked-count">0</span>
</div-->
<div>
  Стоимость <span id="price">2000</span>руб.
</div>
<div>
  <button>Оформить Заказ на сумму <span id="checked-sum">0</span> руб.</button>
</div>


var
	$form = $("#our-form"),
  $price = $("#price"),
  //$price = 2000,
  $allCheckboxes = $("input:checkbox", $form),
  $sumOut = $("#checked-sum");
  //$countOut = $("#checked-count");
  
$allCheckboxes.change(function() {
	var
  	sum = 0;
    //count = 0;
	$allCheckboxes.each(function(index, el) {
  	var 
    	$el = $(el),
    	val;
  	if ($el.is(":checked")) {
    	//count++;
      val = parseFloat($el.val());
      if (!isNaN(val)) {
      	sum += val;
      }
    }
  });
  $sumOut.text(sum);
  alert (+price);
  //$countOut.text(count);
});


Что-то не получается мне переменные передать корректно.
  • Вопрос задан
  • 1086 просмотров
Подписаться 1 Простой 1 комментарий
Пригласить эксперта
Ответы на вопрос 2
@sergyo007 Автор вопроса
Отличный IT-шник и хреновый программист
То есть взять из price, для каждого товара он свой, добавить чекбоксами и вывести этот же price там же или через кнопку, если чекбоксы не выбраны, цена должна остаться прежней.

Код немного подправил для лучшего понимания проблемы. В кнопке изначально должна отображаться цена указанная в id="price" вместо 0, и чекбоксами меняться.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы