Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 04.09.2016, 03:55
Новичок на форуме
Отправить личное сообщение для zharinov Посмотреть профиль Найти все сообщения от zharinov
 
Регистрация: 15.08.2016
Сообщений: 5

Не правильно работает калькулятор
Добрый день. Сайт pizzabro.ru

Есть форма
<form name="form1">

<input type="text" name="customerNumber" placeholder="клиент N2 - это пример"><br/>

<input type="number" name="sum" id="i2" oninput="kalkulyator()"><br>

<input value="0" id="dostavka1" type="radio" name="dostavka" checked="checked" onclick="kalkulyator()"><br>

<input value="170" id="dostavka2" type="radio" name="dostavka" onclick="kalkulyator()">

<input type="submit" value="Оплатить">
</form>


В id="i2" собираются все заказы - с этим проблем нет. Мне нужно, чтобы при нажатии на radio c id="dostavka2" прибавлялось число 170 к id="i2".

Написал следующий код
this.sumAll = function kalkulyator()
		{var globalVar=0;
var sum=0;
		for(var idkey in this.DATA) { sum += parseFloat(this.DATA[idkey].price * this.DATA[idkey].num);}
		
		    if (document.getElementById('dostavka2').checked) {
  globalVar =sum+170;
} else if (document.getElementById('dostavka1').checked) {
   globalVar =sum;
} else {
   globalVar =sum; // изначально думал 3 радио кнопки будет
   
}

	document.getElementById('i2').value = globalVar;   // W3C DOM

		
}


Проблема в том, что значение считается с задержкой (не знаю как правильно выразиться). К примеру нажал на ratio - ничего не произошло, потом например открыл другую вкладку в браузере и сразу вернулся обратно )) Оно посчитало ) .

Если checked="checked" выставить сразу у второго radio, то видно, что калькулятор работает.

Заранее благодарю

Последний раз редактировалось zharinov, 04.09.2016 в 03:58.
Ответить с цитированием
  #2 (permalink)  
Старый 04.09.2016, 08:51
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,990

Сообщение от zharinov
В id="i2" собираются все заказы
Что значит "собираются" и зачем?
Ответить с цитированием
  #3 (permalink)  
Старый 04.09.2016, 10:15
Профессор
Отправить личное сообщение для warren buffet Посмотреть профиль Найти все сообщения от warren buffet
 
Регистрация: 08.07.2016
Сообщений: 1,332

Юзай onchange вместо onclick в своем "ратио" и говнокод выкинь. Это вот что - this.sumAll - ?
Ответить с цитированием
  #4 (permalink)  
Старый 04.09.2016, 16:25
Новичок на форуме
Отправить личное сообщение для zharinov Посмотреть профиль Найти все сообщения от zharinov
 
Регистрация: 15.08.2016
Сообщений: 5

Спасибо )
Ответить с цитированием
  #5 (permalink)  
Старый 04.09.2016, 17:12
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,990

zharinov,
меняйте форму, меняйте саму логику, а то чего вам насоветовали не поможет.
Ответить с цитированием
  #6 (permalink)  
Старый 06.09.2016, 05:24
Профессор
Отправить личное сообщение для warren buffet Посмотреть профиль Найти все сообщения от warren buffet
 
Регистрация: 08.07.2016
Сообщений: 1,332

А что там советовать?

Ответить с цитированием
  #7 (permalink)  
Старый 06.09.2016, 07:47
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,990

Сообщение от warren buffet
А что там советовать?
А если мозги включить?
Ответить с цитированием
  #8 (permalink)  
Старый 06.09.2016, 14:06
Профессор
Отправить личное сообщение для warren buffet Посмотреть профиль Найти все сообщения от warren buffet
 
Регистрация: 08.07.2016
Сообщений: 1,332

Разрешаю. Включай.
Ответить с цитированием
  #9 (permalink)  
Старый 06.09.2016, 14:20
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,990

Сообщение от warren buffet
Разрешаю. Включай.
Нет у тебя мозгов, придурок. Посмотри на форму внимательно, и если есть хоть капелька мозгов у тебя, то может поймешь в чем проблема.
Ответить с цитированием
  #10 (permalink)  
Старый 07.09.2016, 09:58
Профессор
Отправить личное сообщение для warren buffet Посмотреть профиль Найти все сообщения от warren buffet
 
Регистрация: 08.07.2016
Сообщений: 1,332

У меня нет ни капельки мозгов, я же придурок. Расскажи в чем проблема.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
AddEventListener не правильно работает с классами Flakky Events/DOM/Window 2 27.05.2016 13:51
Замена значения в store страно работает I3ev ExtJS 0 09.12.2012 14:22
Скрипт правильно работает только один раз, после начинает выдавать ошибку. xodock Events/DOM/Window 2 23.07.2012 13:04
jQyery функция странно работает! Midel Общие вопросы Javascript 4 08.04.2012 13:40
Не работает код внутри циклов DZHETIGAPA Events/DOM/Window 1 21.06.2011 01:03