1

我在google上找到了这个论坛帖子,但是这里似乎没有人遇到同样的问题,所以我想知道onsubmit='return false;' 在某些IE7浏览器中确实失败了,这意味着自从IE7发布以来,它已经成为一种不可靠的防止直接以ajax形式回传的方法,所以我们需要非常小心使用它吗?

4

1 回答 1

1

好吧,在论坛帖子中,我认为他首先弄错了问题。 return false应该防止直接提交,你做你的验证,然后你做真正的提交。

通常你会这样:

<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>标签中包含所有内容。

于 2010-11-10T11:46:55.550 回答