Проблема с яваскрипт в Мозилле Помогите

  • Автор темы Автор темы Nicca
  • Дата начала Дата начала

Nicca

Новичок
Проблема с яваскрипт в Мозилле Помогите

В ИЕ скрипт проверки работает четко а в мозилле идет отправка формы (при не введенных данных)
Привожу кусочек скрипта:
PHP:
<form method="post" name="regForm" id="regForm" onsubmit="return check_form();" enctype="multipart/form-data">

<script language="javascript">
function check_form()
{
var can_submit = true;

if(check_rub(document.getElementById('rub').value)==false)    {	can_submit=false; 	}	
if(check_subrub(document.getElementById('subrub').value)==false)	{ can_submit=false; }

if(can_submit==true)
   {	document.regForm.submit(); }
else
   {	return false; }

}
</script>

Подскажите что не так?
 
Выдает ошибку какую-то, но не могу прочитать. Отправляется форма. Как остановить отправку формы?
 
Как вариант, закомментировать весь код внутри функции check_form(), добавить в конец функции return false; и маленькими шажками смотреть, какие значения переменных и потихоньку отлаживать.
 
Nicca, Эскейп можно быстро нажать. ;-)


Вместо последних 4-ех строчек нельзя написать:
PHP:
return can_submit;
?
 
1. ф-ии check_rub и check_subrub есть вообще?
2. элемениты с ID (!!! именно атрибутом id) rub и subrub есть или нету?
3. вместо if(can_submit==true) стоит писать просто if(can_submit), а вместо if(can_submit==false) стоит писать просто if(!can_submit).
 
Ужас :)

Ты в функции, которая вызывается на submit формы пытаешься еще раз ее отправить. Там зацикливается все наверно :)

замени

PHP:
if(can_submit==true)
   {    document.regForm.submit(); }
else
   {    return false; }

на просто
PHP:
 return can_submit;
 
Nicca, но всё-таки я бы перестраховался и писал бы так:
PHP:
if (can_submit.toString().length > 4)
 
maxwell, не путай человека, он все равно не поймет всей тонкости твоего юмора.

п.с. по теме ответил реально только Adelf, так как все (включая меня) упустили зацикливание при вызове submit из обработчика onsubmit.
 
Сверху