|
|
|
| Как заставить джаваскрипт работать вот в такой форме
имя поля формы обязательно должно быть
name='srok[1]'
если сделать name='srok' то все нормально, иначе нет.
<script language="JavaScript" type="text/javascript">
function checkform(fobj,id1,id2) {
var err=''; var res='';
if ( (frm.srok[1].value == null) || (frm.srok[1].value.length < 1) )
{
err=err+"Заполните поле: %% n";
};
if (err) {
alert(err);
return false;
}
return true;
}
</script>
<FORM name=frm onsubmit="return checkform(this,1,2)">
<INPUT TYPE='text' name='srok[1]' >
<INPUT TYPE="submit" name="save" value="Сохранить">
</FORM>
|
| |
|
|
|
|
|
|
|
для: stasmus
(01.11.2007 в 16:03)
| | Вернее не так, обязательно ли вам индекс указывать в имени? | |
|
|
|
|
|
|
|
для: sim5
(01.11.2007 в 16:10)
| | да, плюс еще невозможно изменить имя этого поля | |
|
|
|
|
|
|
|
для: stasmus
(01.11.2007 в 16:27)
| | Форма еще содержит поля, с именами отличными от srok.? Для чего передаются аргументы для id1, id2 ? И еще - все поля обязательны для заполнения? | |
|
|
|
|
|
|
|
для: sim5
(01.11.2007 в 16:32)
| | Да, содежит. id1 id2 используются после. просто скрипт упрощен. не все поля обязательны для заполнения. джава генериться в зависим от полей | |
|
|
|
|
|
|
|
для: stasmus
(01.11.2007 в 16:46)
| | Ну тогда можно так:
<script language="JavaScript" type="text/javascript">
function checkform(fobj,id1,id2) {
var err = true;
var len = fobj.length;
for (i=0; i<len; i++) {
if (fobj.elements[i].value < 1) {
fobj.elements[i].value = "Заполните, пожалуйста!";
fobj.elements[i].style.color = "#ff0000";
err = false;
return false;
}
}
if (err) return true;
}
function clear_V(v) {
v.value = '';
v.style.color = "#000";
}
</script>
<FORM name=frm onsubmit="return checkform(this,1,2)">
<INPUT TYPE='text' name='srok[1]' onclick="clear_V(this)">
<INPUT TYPE='text' name='srok[2]' onclick="clear_V(this)">
<INPUT TYPE='text' name='srok[3]' onclick="clear_V(this)">
<INPUT TYPE="submit" name="save" value="Сохранить">
</FORM>
|
Но здесь не учитываются другие поля формы, но их проверяйте в том же цикле, только придется учитывать тип полей (если есть такая необходимость), или их имена.
PS. Надо учитывать,что индекс первого поля формы будет 0 и т.д. | |
|
|
|