日期:2014-05-16  浏览次数:20382 次

关于js中常用的return false使用

return false以前没有怎么关注过,最近遇到关于这个问题,所以想写写。

下面是我从csdn摘取的:举个更直观的例子帮助你理解
<a href="b.htm" onclick="alert('c');return false;alert('d');">link</a>
return false 会终止事件执行 上例中 return false之前的alert('c')会执行 alert('d')不会执行 而且 连接也不会跳转.
一般当点击提交表单的时候,执行函数来检查,例如有没有登录啦?有没有什么必填项没填啊?如果还没有登录,就弹出一个小窗口让你登录,最后返回这个函数,通过了检查,再由该函数formName.submit()方法来真正提交表单。那么这个return false有什么用呢?是起到安全作用的。
例如弹出登录窗口的时候,用户选择了关闭不登录。那么这个函数也就执行完了,那么表单有可能就会被提交。那么不合格的就肯定不能提交。所以加了return false之后,就表单,不管返回什么(包括无动作的)都不执行任何动作,这样表单就不会被提交了。而必须是在检查函数里面,通过了检查之后,再由该函数用formName.submit()来真正提交表单的。
所以在js中我对return false 理解:就是在表单提交前,进行安全判断。

下面是我js页面中常用模式判断:

function doSave(){
if(!validate()) return false;//如果验证不通过,return false表单保存不了 返回到表单界面同时也不会执行下面的语句了。
if(toDate($('#insuranceBegin').val())>toDate($('#insuranceEnd').val())){
alert("保险期限起 <=保险期限止!" );
return false; //同上
}
if(getcheckbox("insuranceContent")==""){
alert("保险内容是必填项!");
return false;//同上
}。。。。。。

}

?