请问jquery函数或者事件何时需要“return true”语句,何时不需要?

以下是一段jquery的代码片段
$(document).ready(function(){
$(document).mousemove(function(e){
var Myx=e.pageX;
var Myy=e.pageY;

$(':input[name=x]').val(Myx);
$(':input[name=y]').val(Myy);
return true;

});
});
以上这段代码中有一个“return true”语句,请问,js函数或者事件函数中,何时需要这个“return true”语句,合适不需要。跪求各位高手大虾指点迷津。跪谢。

很简单,当你需要获取返回值的时候就应该return一个值,否则就无所谓了。

解释:一个函数是否需要返回值并不是由函数本身决定的,而是由上下文决定的。例如
function f() {alert(1);} 不返回任何东西没有问题。
但是如果函数外部有类似 var demo = f();的代码,那么就必须function f() {alert(1);return true;}了,明白了吗?

另外,很多时候代码中的return true, return false语句不是有实际意义的,仅仅是一种书写习惯,或者就是为了阻止函数的继续执行。

例如
function f(n) {
if (n < 1) return false; //此处的return false不一定真有什么用,仅仅是为了阻止后面的代码被执行而已。写成return false更多的是为了贴近书写规范

alert(n);

}
温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-06-21
有些事件发生时时除了调用了我们写的 onXXX 事件外,浏览器还需要做点事,但是当我们返回的 true 和 false 却被浏览器用来作决定的,比如 <form onsubmit="return checkFields();" ...>

如果这里 checkFields 返回 false,浏览器是不会提交这个表单的。类似的也有其它的像丢失焦点时检查字段等,这就要看什么事件。
第2个回答  2013-06-21
表单验证的时候 你注册某个网站的账户时,需要你填写资料,如果登陆名长度需要6位以上,你只写了4位,在你提交时,也就是你的信息到达服务器之前,会做一个信息验证(表单验证),判断你的登陆名长度不够的话,就返回一个false,阻止你提交,不符合规范的信息不会到达服务器的,减小服务器的压力追问

这位大侠能帮我分析一下我的提问中“return true”吗?

追答

这个return true 的意思是执行mousemove()方法的默认操作

第3个回答  2013-06-21
根据你的需要来决定要不要函数的返回值。追问

你好,请问我的问题中的“return true”,是满足什么需要的?

追答

应该没啥需要,看看去掉会不会报错。如果不是自己写的函数是比较难判断作用的。

追问

好的,我试试,去掉之后会不会有什么影响。

第4个回答  2013-06-21
你这儿根本不需要return吧,return语句是根据你得需求来写的啊。具体何时需要这个也得看你当时的情况