我有一些代码给我带来了问题。
这个:
onclick="return my_Check();"
然后这个:
onclick="my_Check();"
我的问题是,这不是一回事吗?
我有一些代码给我带来了问题。
这个:
onclick="return my_Check();"
然后这个:
onclick="my_Check();"
我的问题是,这不是一回事吗?
不,第一个返回my_Check()函数的返回值。
第二个没有。
这意味着事件可能会响应该返回值。某些事件在返回时会被取消false,因此这会对您的页面行为产生影响。
不,它们不一样。浏览器内部使用“onclick”属性的字符串值来构造函数:
var actualHandler = new Function( "event", attributeValue); // for IE, no "event"
因此,添加return关键字意味着处理函数将在完成调用工作后向浏览器返回一个值。如果处理程序想要阻止浏览器执行任何“本机”操作以响应事件,这一点很重要:它可以返回false以告诉浏览器什么都不做。
编辑——我把参数顺序倒了,但现在已经修好了
不。
如果您form这样做submit并且在提交之前运行第一个:
如果结果是false,表单将不会提交
在第二个 - 它会。(即使my_Check();返回假)
return传递给处理程序的任何内容my_Check。如果my_Check返回false,则取消事件的默认操作。没有它,返回的值将被丢弃,并且无论如何都会执行默认操作。