如何通过javascript更改按钮点击时<a>标签的href

IT技术 javascript href attr
2021-01-13 02:16:01

如何在按钮单击时通过 Javascript更改标签href属性值<a/>

<script type="text/javascript">
  function f1()
  {
    document.getElementById("abc").href="xyz.php"; 
  }
</script>

<a href="" id="abc">jhg</a>
<a href="" id="" onclick="f1()">jhhghj</a>
6个回答

没有href,点击将重新加载当前页面,所以你需要这样的东西:

<a href="#" onclick="f1()">jhhghj</a>

或者像这样防止滚动:

<a href="#" onclick="f1(); return false;">jhhghj</a>

或者return false在你的f1函数中:

<a href="#" onclick="return f1();">jhhghj</a>

....或者,不显眼的方式:

<a href="#" id="abc">jhg</a>
<a href="#" id="myLink">jhhghj</a>

<script type="text/javascript">
  document.getElementById("myLink").onclick = function() {
    document.getElementById("abc").href="xyz.php"; 
    return false;
  };
</script>
建议加event && event.preventDefault && event.preventDefault();return false
2021-04-06 02:16:01

正是 Nick Carver 在那里所做的,但我认为最好使用 DOM setAttribute 方法。

<script type="text/javascript">
   document.getElementById("myLink").onclick = function() {
   var link = document.getElementById("abc");
   link.setAttribute("href", "xyz.php");
   return false;
   }
</script>

这是额外的一行代码,但发现它在结构上更好。

你是对的,它没有做任何特别或不同的事情,它只是结构上的。我喜欢以这种方式让我所有的 DOM 函数都用于以后的调试/审查:我更容易看到函数用这些方法做了什么。显然你的答案是正确的:)
2021-03-13 02:16:01
海事组织这里没有必要,这永远是一个 DOM 属性,.href适用于所有浏览器......例如,你会使用.getAttribute("id")而不是仅仅使用.id:)
2021-03-29 02:16:01

移除href属性:

<a id="" onclick="f1()">jhhghj</a>

如果链接样式很重要,那么:

<a href="javascript:void(f1())">jhhghj</a>
谢谢你们的回复,你们真的帮了我。
2021-03-15 02:16:01
省略 href 将改变它的风格和行为。然后它充当锚点而不是链接。
2021-03-19 02:16:01
没有 href 使它成为锚点,单击转换为链接,很正常
2021-03-24 02:16:01
<a>没有href属性标签什么?为什么?
2021-03-26 02:16:01
<a href="#" id="a" onclick="ChangeHref()">1.Change 2.Go</a>

<script>
function ChangeHref(){
document.getElementById("a").setAttribute("onclick", "location.href='http://religiasatanista.ro'");
}
</script>

这是我的看法。当用户按下提交按钮时,我需要通过从文本框中收集值来创建 URL。

<html>
<body>

Hi everyone

<p id="result"></p>

<textarea cols="40" id="SearchText" rows="2"></textarea>

<button onclick="myFunction()" type="button">Submit!</button>

<script>
function myFunction() {
    var result = document.getElementById("SearchText").value;
	document.getElementById("result").innerHTML = result;
	document.getElementById("abc").href="http://arindam31.pythonanywhere.com/hello/" + result;
}		
</script>


<a href="#" id="abc">abc</a>

</body>
<html>