javascript函数调用的语法差异?

时间:2012-07-19 11:48:01

标签: javascript html function syntax

有什么区别:

<div onclick="return function()"></div>

VS

<div onclick="function()"></div> 

他们似乎对我做了同样的事情,我不确定使用哪一个。

3 个答案:

答案 0 :(得分:10)

以示例<form onsubmit="return validate();">...为例,如果validate()返回false,则取消提交。

使用<form onsubmit="validate();">...无论validate()的返回值如何,提交都将继续。

答案 1 :(得分:2)

单词说明..

  

返回该属性的元素的值   居住,另一个不会。

使用return function ()时,只有当function ()计算为隐式转换为 true 的值时,才会执行元素的默认单击方法。

如果它产生 false ,则在运行 onclick -property后,对click事件的评估将暂停。


如果onclick="function ()",无论函数返回什么,元素的默认点击属性都将始终执行。


示例摘要,详细说明了正在发生的事情..

function some_func () { return false; }

<a href="http://google.com" onclick="return some_func()">
  link #1
</a> <!-- user will never end up at google -->

如果在浏览器中启用了javascript,当然..

<a href="http://google.com" onclick="some_func()">
  link #1
</a> <!-- user will always end up at google -->

答案 2 :(得分:1)

有一点不同,如果你写return,它会检查返回是真还是假,只有当return为true时才会采取行动。否则它只会处理。