|
|
|
| Здравствуйте! Пытаюсь сделать проверку поля. Поля скрытые: (product1, product2, product3 и т.п.) если прописать так:
if (theForm.product1.value < 1)
{
alert("Введите город !");
theForm.product1.focus();
return (false);
}
|
- то работает. Но как добится "динамичности", я пытаюсь так:
for (i = 0; i < 100; i++)
{
if (theForm.product[i].value < 1)
{
alert("Введите город !");
theForm.product[i].focus();
return (false);
}
}
|
это не работает | |
|
|
|
|
|
|
|
для: vadimka
(17.08.2009 в 11:12)
| |
for (i = 0; i < 100; i++)
{
if (theForm.product[i].value < 1)
{
alert("Введите город !");
theForm['product'+i].focus();
return (false);
}
}
|
как-то так чтоль | |
|
|
|
|
|
|
|
для: Lelik
(18.08.2009 в 00:55)
| | что-то не получается, я забыл сказать, что делаю еще проверку:
if ( theForm.product1.style.display == "block")
{
theForm.product1.style.display = "block";
if (theForm.product1.value < 1)
{
alert("Введите город !");
theForm.product1.focus();
return (false);
}
}
|
| |
|
|
|
|
|
|
|
для: vadimka
(18.08.2009 в 11:11)
| | а как ваши поля скрытые?
и ещё, вот этот участок кода
if ( theForm.product1.style.display == "block")
{
theForm.product1.style.display = "block";
|
делает следдующее: он проверяет если у элемента свойство стиля display == block, то мы назначаем ему своство стиля display = block, что бессмыслено (такой код называют ещё индийским ;) ). | |
|
|
|
|
|
|
|
для: Lelik
(18.08.2009 в 11:39)
| | да я тут запутался, я это сделал потому что там при перезагрузке страницы, там начинали вылазить скрытые селекты... :)
это у меня индийская защита:) у меня скрытые селекты открываются после выбора в первом селекте... | |
|
|
|
|
|
|
|
для: vadimka
(18.08.2009 в 12:34)
| | код покажи, пожалуйста :) | |
|
|
|
|
|
|
|
для: Lelik
(18.08.2009 в 14:19)
| | естественно, все это выглядит иначе, так как генерируется php скриптом, тут приводится вид в браузере
<select name=id_catalog id="catalog" onchange='show(this.form.id_catalog)'>
<option value=0>Выберите направление</option>
<option value=1 >Здравницы и курорты</option>
<option value=6 >Отдых в России</option>
<option value=3 >Отдых в Карпатах</option>
</select>
<br /><br />
|
первый селект, который виден изначально, и другие, которые появляются после выбора в первом:
<select id=1 style="display:none" name=product1 >
<option value=0>Выберите курорт</option>
<option value=1 >Трускавец</option>
<option value=4 >Моршин</option>
<option value=5 >Шаяны</option>
</select>
<select id=3 style="display:none" name=product3 >
<option value=0>Выберите курорт</option>
<option value=2 >Славское</option>
</select>
<select id=6 style="display:none" name=product6 >
<option value=0>Выберите курорт</option>
<option value=3 >Черное море России</option>
</select>
<script language='JavaScript1.1' type='text/javascript'>
<!--
var messageIdList = new Array(1,6,3);
function show(sel)
{
for (i = 0; i < messageIdList.length; i++)
{
document.getElementById(messageIdList[i]).style.display = "none";
}
document.getElementById(sel.options[sel.selectedIndex].value).style.display = "block";
}
//-->
</script>
|
| |
|
|
|
|
|
|
|
для: vadimka
(18.08.2009 в 18:13)
| | ну тут кой-чего надо исправить :)
<select name=id_catalog id="catalog" onchange='show(this)'>
<option value=0>Выберите направление</option>
<option value=1 >Здравницы и курорты</option>
<option value=6 >Отдых в России</option>
<option value=3 >Отдых в Карпатах</option>
</select>
<br /><br />
|
id должен начинаться или с буквы или со знака подчеркивания
<select id=product_1 style="display:none" name=product_1 >
<option value=0>Выберите курорт</option>
<option value=1 >Трускавец</option>
<option value=4 >Моршин</option>
<option value=5 >Шаяны</option>
</select>
<select id=product_3 style="display:none" name=product_3 >
<option value=0>Выберите курорт</option>
<option value=2 >Славское</option>
</select>
<select id=product_6 style="display:none" name=product_6 >
<option value=0>Выберите курорт</option>
<option value=3 >Черное море России</option>
</select>
<script type='text/javascript'>
<!--
var messageIdList = new Array(1,6,3);
function show(sel)
{
var sValue = sel.options[sel.selectedIndex].value;
var sId = 'product_'+sValue;
for (i = 0; i < messageIdList.length; i++) {
document.getElementById(messageIdList[i]).style.display = "none";
}
document.getElementById(sId).style.display = "block";
}
//-->
</script>
|
| |
|
|
|
|
|
|
|
для: Lelik
(18.08.2009 в 18:31)
| | сорри за задержку со ответом, но в таком случае механизма совсем не работает | |
|
|
|