Помощь новичкам в изучении JS

alexXXL

Постоялец
Регистрация
7 Май 2012
Сообщения
134
Реакции
13
Предлагаю в этой теме опытным JS-кодерам оказывать посильную помощь тем, кто только недавно начал изучать javascript.
Вот я столкнулся с такой задачей. Мне нужно, чтобы в зависимости от выбора <select name="grdnaz" id="grdnaz"> менялась переменная cost_min. Я написал такой код:
Код:
<script>
var grd_naz = document.getElementById("grdnaz").value;
var cost_min
function costMin(){
if(grd_naz==1) document.getElementById("cost_min").value=500;
if(grd_naz==2) document.getElementById("cost_min").value=500;
if(grd_naz==3) document.getElementById("cost_min").value=500;
if(grd_naz==4) document.getElementById("cost_min").value=500;
if(grd_naz==5) document.getElementById("cost_min").value=1300;
if(grd_naz==6) document.getElementById("cost_min").value=1300;
if(grd_naz==7) document.getElementById("cost_min").value=1300;

document.forms['calcForm'].elements['grdnaz'].fireEvent('change');
}
</script>
<input id="cost_min" type="hidden" name="cost_min" value="">
Видимо я что-то не так сделал, потому что в инпут ничего не передается. Подскажите, в чем ошибка?
 
Код:
дето там grd_naz
<form>
<input id="cost_min" type="hidden" name="cost_min" value="">
</form>
<script>
f=(function (){
var grd_naz = document.getElementById("grdnaz").value;
var cost_min;
 
if(grd_naz==1) document.getElementById("cost_min").value=500;
if(grd_naz==2) document.getElementById("cost_min").value=500;
if(grd_naz==3) document.getElementById("cost_min").value=500;
if(grd_naz==4) document.getElementById("cost_min").value=500;
if(grd_naz==5) document.getElementById("cost_min").value=1300;
if(grd_naz==6) document.getElementById("cost_min").value=1300;
if(grd_naz==7) document.getElementById("cost_min").value=1300;
 
document.forms['calcForm'].elements['grdnaz'].fireEvent('change');
})();
</script>
 
Поставил <script> после формы и значение переменной теперь присваивается, но при изменении селекта она не меняется.
 
а повесить событие на изменение ? и if лучше переписать на селект
 
Разве document.forms['calcForm'].elements['grdnaz'].fireEvent('change') не отслеживает изменение?
А на if я планирую повесить выбор еще двух переменных, но это будет следующий этап. Сейчас с одной нужно разобраться)))
 
Внимательно прочитал и понял, что js не для меня. В теории я представляю, по какому алгоритму мне нужно сделать вычисления, а на практике ничего не получается... Но все-таки задача стоит доделать этот долбаный калькулятор. Не сочтите за наглость, ткните носом, что куда дописать, чтобы повесить событие на изменение селекта?
 
Народ а в JS есть функция которая осуществляет поиск по части ссылки?
допустим есть куча URL'в они все начинаются по разному но где нибудь в середине есть общее слово
типа
Для просмотра ссылки Войди или Зарегистрируйся...
Для просмотра ссылки Войди или Зарегистрируйся...
Для просмотра ссылки Войди или Зарегистрируйся...
document.URL возвращает всю ссылку, document.URL.substring(0,15) возвращает часть, но цифры всегда меняются
а как намутить функцию которая будет цеплять URL по части текста в нем ?
 
Народ а в JS есть функция которая осуществляет поиск по части ссылки?
допустим есть куча URL'в они все начинаются по разному но где нибудь в середине есть общее слово
типа
Для просмотра ссылки Войди или Зарегистрируйся...
Для просмотра ссылки Войди или Зарегистрируйся...
Для просмотра ссылки Войди или Зарегистрируйся...
document.URL возвращает всю ссылку, document.URL.substring(0,15) возвращает часть, но цифры всегда меняются
а как намутить функцию которая будет цеплять URL по части текста в нем ?
см Для просмотра ссылки Войди или Зарегистрируйся
 
Внимательно прочитал и понял, что js не для меня. В теории я представляю, по какому алгоритму мне нужно сделать вычисления, а на практике ничего не получается... Но все-таки задача стоит доделать этот долбаный калькулятор. Не сочтите за наглость, ткните носом, что куда дописать, чтобы повесить событие на изменение селекта?

ну вот код, который отработал, если я правильно понял задачу
Код:
<form name="calcForm" id="calcForm">
<input id="cost_min" type="text" name="cost_min" value="">
<select name="grdnaz" id="grdnaz">
    <option value="1">Kyiv</option>
    <option value="2">Moscow</option>
    <option value="3">New-York</option>
</select>
</form>
<script>
document.calcForm.elements['grdnaz'].onchange  = function(){   
var grd_naz = document.getElementById("grdnaz").value;
 
if(grd_naz==1) document.getElementById("cost_min").value=500;
if(grd_naz==2) document.getElementById("cost_min").value=600;
if(grd_naz==3) document.getElementById("cost_min").value=700;
}
</script>
 
Назад
Сверху