Помогите применить 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, время: 04:04. |