2017-08-17 73 views
-4

为了更好地理解JavaScript,并试图了解其原因,Google搜索导致没有答案(尽管我可能使用不正确的术语搜索)。为什么在调用我的javascript函数时需要'javascript:'?

我在<a></a>内的onclick事件中正在调用函数。通过在创建函数之前添加'javascript:',我能够获得最终工作的功能(来自同事的建议)。没有onclick中的javascript:部分,我的函数没有被调用。

它现在可以工作,但我不明白这是做什么,另一位程序员谁建议把它在电话中也不知道它究竟做了什么。

这里所使用的代码的简化版本:

#1 .jspf higher up which includes page #2 to display it's contents 
function createTagging(1, 2) { 
    cmCreateElementTag(1 + ", " + 2,"TagName"); 
} 


HTML in .jspf file #2 further down website makes the call to function in file #1 
<a id="CatEntry" href="https://aurl" 
       onclick="javascript: createTagging('parameter1', 'parameter2');" 
       title="atitle" aria-label="alabel"> 

       <img id="ThumbNailImage_59244" src="https://image.jpg" 
       alt="" border="0"/> 

     </a> 

-Troy

+0

相关https://stackoverflow.com/questions/10877485/better-way-to-call-javascript-function-in-a-tag –

回答

4

为什么需要 '的javascript:' 在呼叫我的javascript函数?

你不知道。这是一个onclick处理程序。您使用javascript:伪协议,其中URL预计(例如,如果您使用href而不是onclick)。 onclick需要JavaScript代码。

事实上,它仅适用于JavaScript标记了语句,并且javascript:是有效的标签。它完全被忽略。

没有在onclick中的JavaScript:部分,我的功能没有被调用。

尊重,那一定是观察错误。再次,在onclick处理程序中,它使得无差异无论您是否在前面有javascript:。如果它不工作,然后它正在工作,你改变了一些东西其他在你添加javascript:

+1

“一个onclick处理程序,它是没有区别,你是否有javascript:在前面是否。“ 谢谢TJ这也是我的理解。 Perphaps我做了一个额外的变化,我看了。感谢您的快速回复。 – Troy

2

onclick属性总是在HTML中调用JavaScript。

onclick="createTagging('parameter1', 'parameter2');" 

如果使用不是一个事件,而是href只有必要的。你需要为Javascript添加protocoll。

相关问题