2010-11-01 43 views
3

我正在使用jslint来检查我的javascript。如何正确设置调用JavaScript函数的URL?

它给我反复出现以下错误:

Problem at line 236 character 18: Script URL. 
a.href = "javascript:DoSomething(" + messageID + ");" 

也许,JSLint的是对的。什么是设置.href的正确方法?

+2

哇,这个问题的答案是完全没有意义的,#1没有人提出你的问题,#2人给你提出了非常糟糕的建议,你不应该使用onclick.JS处理程序应该绑定在JS层上,而不是与onclicks内联。 – 2013-07-29 19:02:59

回答

4

给它一个onclick事件处理程序,而不是像这样:

a.onclick = function() { DoSomething(messageID); }; 

离开href#,要么停止propgation或return false停止滚动,例如:

a.onclick = function() { DoSomething(messageID); return false; }; 
+0

以帮助我的基础:) – newtogit 2010-11-01 19:41:55

0

您应该使用onclick事件:

<a href="#" onclick="DoSomething(messageID);">Link Text</a> 
0
<a href="#" onclick="javascript:DoSomething(" + messageID + "); return false;">Link</a> 

我添加了return false;以防止a的正常行为。

+3

领先的“javascript:”是不必要的。 – Pointy 2010-11-01 19:23:14

0

HREF只能用于实际的网址。使用“href="javascript:...”被认为是不好的形式。

调用JavaScript的动作应该进入onclick属性。

0

错误在于您试图通过首先更改“href”来设置“点击”行为。不要这样做。相反,给<a>标签的“点击”处理程序,并设置的“href”,以“#”,如果你不希望链接到“走出去”任何地方

0

设置:document.getElementById('myHref').href = "http://stackoverflow.com"