Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/432.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 当从函数返回链接时,href不起作用_Javascript_Html_Hyperlink_Onclick_Href - Fatal编程技术网

Javascript 当从函数返回链接时,href不起作用

Javascript 当从函数返回链接时,href不起作用,javascript,html,hyperlink,onclick,href,Javascript,Html,Hyperlink,Onclick,Href,以下工作: <a id="showDirectionsMapLink" href="#" onclick="href='comgooglemaps://maps.google.com/maps?saddr=Google,+1600+Amphitheatre+Parkway,+Mountain+View,+CA+94043&daddr=Google+Inc,+345+Spear+Street,+San+Francisco,+CA&center=37.422185,-122.0

以下工作:

<a id="showDirectionsMapLink" href="#" onclick="href='comgooglemaps://maps.google.com/maps?saddr=Google,+1600+Amphitheatre+Parkway,+Mountain+View,+CA+94043&daddr=Google+Inc,+345+Spear+Street,+San+Francisco,+CA&center=37.422185,-122.083898&zoom=10';">test</a>

它将在谷歌地图应用程序中打开

以下操作不起作用:

<a id="showDirectionsMapLink" href="#" onclick="showDirectionsMap();">test2</a> 

showDirectionsMap()函数将获取所选帐户的位置,并返回与上面相同的精确字符串。 href='comgooglemaps://maps.google.com/maps?saddr=Google,+1600+圆形剧场+公园道,+Mountain+View,+CA+94043&daddr=Google+Inc,+345+斯皮尔街,+San+Francisco,+CA¢er=37.422185,-122.083898&zoom=10'

什么也没发生

html

<a id="showDirrectionsMapLink">your link</a>

如果要在a标记上使用onClick,则需要停止标准执行并手动重定向。标准执行在更改之前读取href

如果您希望使用函数返回的URL,则必须将其分配给
this.href
,就像您在使用文本字符串的版本中所做的那样

<a id="showDirectionsMapLink" href="#" onclick="this.href = showDirectionsMap();">test2</a> 


设置链接href不会触发单击,它只会更改href。您可以使用
window.location.href
使其重定向,或者只是通过编程触发
单击
实际上下面的代码是用函数中的字符串显示警报。。。
onclick
代码返回的字符串不用于任何用途。它没有成为链接的href。我尝试了window.location.href,但它没有将我指向google地图应用程序…它向我显示salesforce的一个页面,该url不起作用。这是在salesforce的VisualForce页面中。谢谢,这是在salesforce的VisualForce页面中。因此,当我使用您发布的代码时,它将引导我进入salesforce应用程序中的空白页。有办法解决这个问题吗?我不知道为什么它的工作原理与第一个示例不同。Javascript控制台中是否存在错误?
<a id="showDirectionsMapLink" href="#" onclick="this.href = showDirectionsMap();">test2</a>