Javascript-форум (https://javascript.ru/forum/)
-   Javascript под браузер (https://javascript.ru/forum/css-html/)
-   -   Счетчик суммы на сайте (https://javascript.ru/forum/css-html/43360-schetchik-summy-na-sajjte.html)

bohiness 03.12.2013 00:38

Счетчик суммы на сайте
 
не работает. ничего не понимаю
есть выпадающий список и 2 флажка, надо посчитать сколько выйдет в итоге.

<script type="text/javascript">
	function schet() {
			var p = $("select#pismo").value();
			var pzakaz = $("p-zakaz").value();
			var p10 = $("p-10").value();
			document.getElementById("total").innerHTML += (p + pzakaz) * p10 / 100 + "руб" ;
		}
	</script>

<select  id="pismo" name="tip" size="1">
  <option id="p-69" value="69">69 рублей</option>
  <option id="p-129" value="129">129 рублей</option>
  <option id="p-229" value="229">229 рублей</option>
</select>
  <input id="p-zakaz" type="checkbox" name="a" value="60">
  <input type="checkbox" name="a1" value="10" id="p-10">
  
<label id="total">Итого:</label><br>
<input type="submit" onclick="schet()" value="посчитать"><br>

рони 03.12.2013 00:45

bohiness,
как найти элементы которые вы указали в строках 4 и 5 и почему все значения строк 3, 4, 5 должны превратиться в числа?

L0k1 03.12.2013 15:45

$("p-zakaz").value();
$("p-10").value();


тут как минимум не хватает #,
и val() , а не value() вроде как

L0k1 03.12.2013 16:13

<button id='sum'>Посчитать</button>

$(function(){
  $('#sum').click(function(){
     var p = $('#pismo').val(),
     pzakaz = ($('#p-zakaz').prop('checked')) ? $('#p-zakaz').val() : 0,
     p10 = ($('#p-10').prop('checked')) ? $('#p-10').val() : 1;
      $('#total').html((p + pzakaz) * p10 / 100 + "руб");	
   });
 });


наверно как-то так оно должно быть

рони 03.12.2013 16:33

L0k1,
тоже решили без чисел обойтись?

L0k1 03.12.2013 17:00

и ко всей лабуде добавляем parseInt или parseFloat, чтобы были числа :write:

рони 03.12.2013 17:06

L0k1,
:victory:

bohiness 04.12.2013 00:56

Цитата:

Сообщение от L0k1 (Сообщение 284290)
и ко всей лабуде добавляем parseInt или parseFloat, чтобы были числа :write:

а куда именно parseFloat добавлять надо?

рони 04.12.2013 06:42

bohiness,
$('#total').html((parseInt(p) + parseInt(pzakaz)) * parseInt(p10) / 100 + "руб");

рони 04.12.2013 06:44

bohiness,
или так
$(function(){
  $('#sum').click(function(){
     var p = +$('#pismo').val(),
     pzakaz = ($('#p-zakaz').prop('checked')) ? +$('#p-zakaz').val() : 0,
     p10 = ($('#p-10').prop('checked')) ? +$('#p-10').val() : 1;
      $('#total').html((p + pzakaz) * p10 / 100 + "руб");
   });
 });


Часовой пояс GMT +3, время: 07:48.