【问题标题】:How can I change two properties of an anchor element?如何更改锚元素的两个属性?
【发布时间】:2021-10-31 09:47:15
【问题描述】:

我有这两个变量:

var a_link = "someLink.com";
var a_text = "Some url text";

我正在尝试将这两个变量插入到锚标记中。像这样:

<a href="a_link">a_text</a>

到目前为止,这是我尝试过的:

<a href="javascript:window.open(a_link);">

如何将a_linka_text 更改为对应的变量?

【问题讨论】:

    标签: javascript href


    【解决方案1】:

    你想要做的事情可以通过 DOM 操作来实现。

    基本上:你有一个带有两个变量的锚元素&lt;a&gt;href 和内部 HTML。您只需要找到锚元素并将这些属性更改为相应的变量即可。

    var a_link = "someLink.com";
    var a_text = "Some url text";
    
    var anchor = document.getElementsByTagName("a")[0];
    anchor.href = a_link; 
    anchor.innerHTML = a_text;
    

    您在document.getElementsByTagName("a") 之后看到的[0] 表示我们正在寻找第一个锚元素。如果你想改变,比如说,第三个&lt;a&gt;,你会使用[2]

    您可以阅读有关 DOM 操作的更多信息here

    【讨论】:

    • 设置等于innerHTML 不是括号= 不是() 并在url 名称前添加http://https:// 如果它们不存在浏览器不会移动他到那个网站,它会将他视为一个相对 url,并将他移动到他的主机上的 url
    • @JS_INF 你是对的。我编辑了答案以显示正确的 innerHTML 用法。
    • @JS_INF 关于http://https:// 的问题:你也是对的。但是,为了清楚起见,我使用了问题中给出的变量。
    • 我在一个大表格的一列单元格中使用它。我可以这样写吗:&lt;td&gt; &lt;a target="_blank" id="link_260"&gt;&lt;/a&gt;; &lt;script&gt; let link260 = document.getElementById('link_260'); link260.href = url_260; link260.innerHTML = urltxt_260; &lt;/script&gt; &lt;/td&gt;
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-04-25
    • 1970-01-01
    • 2011-05-03
    • 1970-01-01
    • 2010-09-16
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多