2013-03-20 3 views
2

выглядел много, но не мог найти решение моей проблемы, может кто-то, пожалуйста, скажите мне, почему это не работает?предотвратить обновление?

if(titeln == 0 || grades == 0 || imdblink == 0 || bilden == 0 || handlingen == 0) 
     { 
      alert("Please fill out the form correctly");  
      $('form[name=test]').submit(function(e) { 
      e.preventDefault(); 

      }); 
     } 
     else 
     { 
      return null; 
     } 

если вы заполняете форму исправления в первый раз, он отправляет отлично, но если вы оставили сом текстовое поле пустым функцию preventDefault работает как надо, то исправить эту проблему и заполнить его функции до сих пор работает, когда вы пресса представить? почему функция продолжает работать, даже если поля были исправлены?

+0

Что вы имеете в виду "продолжать работать"? Вы ожидали, что валидация будет магически применяться только в первый раз? –

+0

Я бы сказал, что после того, как я нажал кнопку submit, я снова запустил бы оператор if, потому что ни одно из полей не равно 0, но, кстати, это не так ... – spovell

ответ

7

Потому что вы снова связываете его!

Все, что вам нужно сделать в приведенном выше коде, - это вернуть false при возникновении любых ошибок.

т.е.

if(titeln == 0 || grades == 0 || imdblink == 0 || bilden == 0 || handlingen == 0) 
{ 
    alert("Pleae fill out the form correctly"); 
    return false; 
} 
.... 
+0

спасибо, отлично работал :) – spovell

0

вы можете попробовать поставить в еще пункте

$('form[name=test]').submit(); 
Смежные вопросы