Помогите применить JS к форме
Добрый вечер коллеги. Пожалуйста помогите новичку с задачей. Написал JS но незнаю как получившуюся "белеберду" применить к форме, через prompt все работает нормально....
var x = prompt("Количество", ""); var y = prompt("Вес", ""); x = parseInt(x); y = parseInt(y); if (x >= 1 && x <= 50 && y >= 0 && y <= 1) { var z1 = x*200+x*35; alert(z1); document.write(z1); } if (x >= 51 && x <= 150 && y >= 0 && y <= 1) { var z2 = x*180; alert(z2); document.write(z2); } if (x >= 151 && x < 9999 && y >= 0 && y <= 1) { var z3 = x*170; alert(z3); document.write(z3); } if (x >= 1 && x <= 50 && y >= 1.1 && y <= 4) { var z4 = x*215; alert(z4); document.write(z4); } if (x >= 51 && x <= 150 && y >= 1.1 && y <= 4) { var z5 = x*190; alert(z5); document.write(z5); } if (x >= 151 && x < 9999 && y >= 1.1 && y <= 4) { var z6 = x*180; alert(z6); document.write(z6); } if (x >= 1 && x <= 50 && y >= 4.1 && y <= 8) { var z7 = x*250; alert(z7); document.write(z7); } if (x >= 51 && x <= 150 && y >= 4.1 && y <= 8) { var z8 = x*230; alert(z8); document.write(z8); } if (x >= 151 && x < 9999 && y >= 4.1 && y <= 8) { var z9 = x*200; alert(z9); document.write(z9); } if (x >= 1 && x <= 50 && y >= 8.1 && y <= 15) { var z10 = x*330; alert(z10); document.write(z10); } if (x >= 51 && x <= 150 && y >= 8.1 && y <= 15) { var z11 = x*300; alert(z11); document.write(z11); } if (x >= 151 && x < 9999 && y >= 8.1 && y <= 15) { var z12 = x*280; alert(z12); document.write(z12); } if (x >= 1 && x <= 50 && y >= 15.1 && y < 9999) { var z13 = x*360; alert(z13); document.write(z13); } if (x >= 51 && x <= 150 && y >= 15.1 && y < 9999) { var z14 = x*320; alert(z14); document.write(z14); } if (x >= 151 && x < 9999 && y >= 15.1 && y < 9999) { var z15 = x*300; alert(z15); document.write(z15); } вот сама форма: <br/> Количество: <input type="text" id="x" value="1" onchange="calc()" /> <br/> Вес: <input type="text" id="y" value="1" onchange="calc()" /> <div>Стоимость доставки: <span id="result">0</span> руб.</div> Заранее огромное спасибо! Просто позарез нужно реализовать срочно это а JS только сегодня начал изучать (((( P.S Пытался колдовать еще и с этим, но тут вобще ноль реакции в браузере function calc() { var x = document.getElementById("x"); var y = document.getElementById("y"); var result = document.getElementById("result") |
y = parseInt(y)... y >= 4.1
parseInt возвращает целое число. Нет смысла далее сравнивать его с дробным. Целое число по определению не может быть равно равно 4.1 Цитата:
result.innerHTML = z1; |
result.innerHTML = z1; куда именно это вставлять :-? и как перечислить z1 z2 и т.д. таким образом: result.innerHTML = z1 + z2 + z3;или же по другому? P.S. Спасибо за помощь! |
если через prompt вносить данные начал показывать результат, однако если заполняю в text field формы в результате выводится : undefined (насколько успел понять JV это означает что значение не определенно.) Хотя повторюсь если прописываю:
var x = prompt("Количество", ""); var y = prompt("Вес", ""); то результат выводится.... |
pulmar,
Цитата:
|
<input type="button" onclick="tstForm()" value="Проверить"> <script> function tstForm() { // Тут код проверки }tstForm() </script> |
Спасибо за ответ!! Однако я не очень понимаю "Код проверки" имеется ввиду этот:
if (x >= 1 && x <= 50 && y >= 0 && y <= 1) 06 { 07 var z1 = x*200+x*35; 08 alert(z1); 09 document.write(z1); 10 } 11 if (x >= 51 && x <= 150 && y >= 0 && y <= 1) 12 { 13 var z2 = x*180; 14 alert(z2); 15 document.write(z2); 16 } ? или же иной? P.S. Еще раз спасибо всем кто не оставит или уже не оставил без внимания мою проблему |
Всё заработало! Всем огромнейшее спасибо!:dance:
|
Часовой пояс GMT +3, время: 13:05. |