a标签内onclick跳转失效:为什么点击链接没有反应?
a标签内onclick跳转失效
在a标签中使用onclick事件处理程序跳转页面时,遇到无法正常跳转的情况。代码如下:
`
<br><html><br><head><br><script type="text/jscript"><br>function rechargetp(){</p><pre class="brush:php;toolbar:false">$("#rechargeah").attr('href',"https://www.baidu.com/");
}
aidu.com/" id="rechargeah" onclick="rechargetp();" target="_blank">点我跳转
`
调试后发现,页面可以正常渲染,但点击“点我跳转”链接后没有任何反应。
原因分析
onclick事件处理程序优先级高于href属性,当onclick事件执行时,会覆盖href指定的url。如果onclick事件中没有手动修改href值,则跳转将不会发生。
解决方案
为了解决这个问题,可以在onclick事件处理程序中手动修改href值,确保与target url一致。修改后的代码如下:
`
<br><html><br><head><br><script type="text/jscript"><br>function rechargetp(){</p><pre class="brush:php;toolbar:false">$("#rechargeAh").attr('href',"https://www.baidu.com/");window.location.href = "https://www.baidu.com/";
}
点我跳转
`