我在google中找到了这个forum thread,但这里似乎没有人遇到同样的问题,所以我想知道onsubmit ='return false;'在一些IE7浏览器中确实失败了,这意味着自从IE7发布以来,它已经成为一种防止以ajax形式直接回发的不可靠方法,所以我们需要非常小心地使用它吗?
答案 0 :(得分: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>
标记中包含所有内容。