You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用JavaScript替换按钮的location.href链接

问题解决方法

你的代码失效原因是:<button> 元素本身没有 href 属性,你原来的跳转逻辑写在 onclick 事件的 location.href 里,所以直接修改 href 不会生效。

可以用两种方法修复:

方法一:修改按钮的 onclick 事件内容

直接替换按钮 onclick 事件里的跳转逻辑:

<button onclick="changeURL()">change link</button>
<button onclick="location.href='https://google.com'" id="link">go to link</button>

<script>
function changeURL(){
     var newURL = "https://youtube.com";
     // 重新绑定onclick事件,替换跳转地址
     document.getElementById("link").onclick = function() {
         location.href = newURL;
     };
}
</script>

方法二:改用带 href 的链接模拟按钮(推荐)

如果想通过修改 href 控制跳转,可将按钮换成 <a> 标签,用CSS模拟按钮样式,逻辑更直观:

<button onclick="changeURL()">change link</button>
<a href="https://google.com" id="link" style="display:inline-block; padding: 6px 12px; border:1px solid #ccc; background:#f5f5f5; text-decoration:none; color:#333; cursor:pointer;">go to link</a>

<script>
function changeURL(){
     var newURL = "https://youtube.com";
     document.getElementById("link").href = newURL;
}
</script>

内容的提问来源于stack exchange,提问作者AW Soft

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.22 06:44:56