IE7 onSubmit вернуть false в функции может произойти сбой? - PullRequest
1 голос
/ 15 ноября 2009

Я нашел эту ветку форума в Google, но никто здесь, похоже, не сталкивался с такой же проблемой, поэтому я хотел бы знать, если onsubmit = 'return false;' действительно терпит неудачу в некоторых браузерах IE7, а это означает, что он стал ненадежным методом предотвращения прямой публикации обратно в форме ajax после выпуска IE7, поэтому мы должны быть очень осторожны с его использованием?

1 Ответ

1 голос
/ 10 ноября 2010

Ну, в ветке форума, я думаю, он неправильно понял проблему. return false должен предотвратить прямую отправку, вы делаете проверку, а затем вы делаете real submit.

Обычно вы идете так:

<form method="post" action="action.html" onsubmit="AmIDoingSomethingWrong(this.form);return false;">
    <input type="submit" />
</form>

и в вашей функции:

function AmIDoingSomethingWrong(f) {
    //validation script here 
    if(){
        //DOM modification/ redirection/whatever on error
    }else{
        f.submit(); // submit on ok
    }
}

Теперь, используя jQuery, все более понятно, поскольку в теге <script> можно все.

...