Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Вёрстка веб-сайтов > onSubmit не работает IE


Автор: DIMONSOFT 10.7.2008, 17:40
Использую следующий код:
Код

<form action='send.html'  method="post" name="send" onSubmit="return sub();" style="margin: 0;" >
<table border="0" class="stcenter">
<tr>
<td rowspan="5">
<img src="images/big/file.png" align="left">  
</td>
<td>


Кому: </td><td> <input name="" type="text" disabled value="+" size="1" maxlength="1" /><input type='text' class='login' name='to' id='to' value='' maxlength='15'><span class=error id=err_to></span></td></tr>
<tr><td>
От кого: </td><td><input type='text' class='login' name='from' id='from' value='' maxlength='11'><small>(11 символов латиницей или номер)</small><span class=error id=err_from></span></td></tr>
<tr><td>Текст: </td><td><textarea cols="25" rows="5" wrap="SOFT" name="text" id='text'  onkeyup="updateTextBoxCounter()"></textarea><span class=error id=err_text></span></td></tr>
<tr><td>Длина: </td><td>
<input name="CharCounter" type="text" value="          --" readonly="readonly" id="CreateText1_InfoCharCounter" class="chars" disabled="disabled" /></td></tr>
<br>
<br>
&nbsp;
  
&nbsp;
<tr><td></td><td>  <input type="submit" value="Отправить"></td></tr>
</table>
</form>

Код

function check_to()
{
 if(document.getElementById('to').value=='')
               {
               err_to = "Заполните поле 'Кому'";
               err = 1;
               }
                else
                 {
                  re2 = new RegExp("^[\.0-9_-]+$");
                  if(!re2.test(document.getElementById('to').value))
                   {
                      err_to = "Поле Кому может содержать только цифры!";
                      err = 1;
                   }
                 }

}

function check_from()
{

 if(document.getElementById('from').value=='')
      {
    err_from = "Заполните поле 'От кого'";
    err = 1;
        }
else{
re2 = new RegExp("^[\.a-zA-Z0-9_-]+$");
    if(!re2.test(document.getElementById('from').value))
      {
      err_from = "Поле 'От кого' может содержать только латинские символы или цифры";
err = 1;
}
}}

function check_text()
{
 if(document.getElementById('text').value=='')
      {
    err_text = "Введите текст сообщения";
    err = 1;
        }
}

function sub()
{

err = 0;
err_from="";
err_to="";
err_text="";
  check_from();
  document.getElementById('err_from').innerHTML = err_from;

  check_to();
  document.getElementById('err_to').innerHTML = err_to;
  
  check_text();
  
document.getElementById('err_text').innerHTML = err_text;

  if (err==1) return false;
  else  return true;



}


В опере, firefox работает, в IE7 не выводит никаких ошибок при заполнении, сразу отправляет форму. В чем может быть проблема?

Автор: bars80080 10.7.2008, 17:45
а так:

name="send" onsubmit="sub(); return false;" 


?

Автор: Wolf1994 10.7.2008, 17:55
Ошибки в IE возникают. Часть ошибок решается декларированием переменных: var err, etc.

Автор: DIMONSOFT 10.7.2008, 18:39
Цитата(Wolf1994 @  10.7.2008,  17:55 Найти цитируемый пост)
Часть ошибок решается декларированием


Wolf1994, благодарю  smile 

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)