return false与event.returnValue = false

发布于 2009-10-07 作者 [重庆SEO]

本文来自百度空间博客搬家

2007年开始使用的是 hi.baidu.com/udjy
后来百度空间强制升级为轻博客 hi.baidu.com/imnoco
2015年百度关闭了百度空间

<html>
<head>
<script type="text/javascript">
function form1()
{
event.returnValue = false;
}
function form2()
{
return false;
}
</script>
</head>

<body>
<form onsubmit="form1()"> <!-- 1 -->
<fieldset><legend>event.returnValue = false</legend>
<input type="submit" /></fieldset>
</form>

<form onsubmit="return form2()"> <!-- 2 -->
<fieldset><legend>return false的正确用法</legend>
<input type="submit" /></fieldset>
</form>

<form onsubmit="form2()"> <!-- 3 -->
<fieldset><legend>return false的错误用法</legend>
<input type="submit" /></fieldset>
</form>
</body>
</html>

三个提交的onsubmit属性都是想让表单提交之前验证,验证失败则不提交表单。第一、二两处做到了,第三出没做到。

这个只有运行起来才能看到结果

1处,表单没有提交
2处,表单没有提交
3处,表单提交了。这不是希望的

----------------------------------------------------

if (window.confirm("確定刪除資料嗎?") != true) {event.returnValue=false;}
alert("執行完畢!");

if (window.confirm("確定刪除資料嗎?") != true) {return false;}
alert("執行完畢!");

event.returnValue=false 還是會執行下面的其他動作像 alert。
return false 不會執行 alert 或以下的任何動作。