2012-06-05 22 views
1

考虑以下示例的属性的Javascript中的HTML元素:Javascript中的HTML:何时使用分号码,何时返回false?

<input type="button" onclick="somceFunc()" /> 
<input type="button" onclick="somceFunc();" /> 
<input type="button" onclick="somceFunc(); return false;" /> 

一个应何时结束someFunc()呼叫用分号,并且当应该分号被淘汰?另外,何时应该通过致电return false;来结束属性?

谢谢。

+1

那么,你永远不应该以'虚假'结束 - 它什么也不做。 (你可能会想''返回false;') – JJJ

+2

这不是冒号。这是一个分号。 –

+1

我很确定最好的做法是用分号结束所有函数调用。和Juhana一样,你应该使用return false;这将禁用任何默认操作(即,对onsubmit返回false将禁止表单执行其默认操作) –

回答

5

何时应该以冒号结束someFunc()调用,何时应该消除冒号?

这是一个分号。总是用一个结束表达式。自动分号插入有足够的陷阱,你最好避免它。

另外,什么时候应该以false的呼叫结束属性?

false是一个文字,而不是函数,你不能调用它。

该例中的用法绝对没有任何用处。

如果您是通过内在事件属性(如onclick)到return false,那么您将停止触发控件的默认操作。例如链接将不会被遵守。尽管按钮没有默认操作。

内部事件属性应该避免使用unobtrusive JavaScript

+0

四... frickin ...秒...你打我= = = –

+0

谢谢。维基百科链接很棒。 – dotancohen

2

SEMI -colons是在JavaScript中可选的,但它总是一个好主意,包括他们避免危险的意外情况,如发生了什么,如果你尝试这样做:

return 
    { 
    a:1, 
    b:2 
    }; 

对于false ,它一无所获。你想要returnfalse当你想停止默认的点击动作发生(通常只关心链接或表单按钮)。

+0

谢谢你Kolink。这是缺少分号的一个有趣的例子。 – dotancohen

1

的分号来分割语句彼此,

这是一个函数调用或任何JavaScript语句使用分号好的做法。

为 '假' 的语句:

<input type="button" onclick="somceFunc(); false;" /> 

这是错误的做法。要么你应该打电话return false
那么,return false是呼叫,以防止被调用的行动。

+0

谢谢Nishu。 – dotancohen

相关问题