使用jQuery更改超链接文本的值

时间:2017-06-12 08:45:01

标签: javascript jquery html

我有以下HTML:

<span id="callnow" class="mhMobile callnow"><a href="tel:01234567890">01234567890</a></span>

当页面加载时,我可以将超文本标签的值更改为Call Now吗?

我试过这个Javascript但到目前为止没有运气:

(function(text){
    setTimeout(function(){
        document.getElementById("callnow a").innerHTML = "Call Now";
    }, 1000);
})(text)

样本: https://jsfiddle.net/7obax3ta/

非常感谢任何帮助:)

5 个答案:

答案 0 :(得分:1)

document.getElementById()不接受css3选择器

更改

document.getElementById("callnow a")

document.querySelector("callnow a")

或者

document.querySelectorAll("callnow a")[0] // 0 specify 0th element.

答案 1 :(得分:1)

简单地说:

$("#callnow a").text('Call Now');

答案 2 :(得分:1)

而是给你的标签一个id并在你的getElementById中调用该id,然后将对innerHTML的调用更改为.text。

<span id="callnow" class="mhMobile callnow"><a id = "callnow-link" href="tel:01234567890">01234567890</a></span>


(function(text){
    setTimeout(function(){
        document.getElementById("callnow-link").text("Call Now");
    }, 1000);
})(text)

答案 3 :(得分:1)

如果你想使用getElementById给id来锚定并调用它。

    setTimeout(function() {
      document.getElementById("test").innerHTML = "Call Now";
    }, 1000);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<span id="callnow" class="mhMobile callnow"><a id='test' href="tel:01234567890">01234567890</a></span>

答案 4 :(得分:0)

正如其他答案中所述,document.getElementById()不接受css3选择器尝试querySelector。同时删除不需要的参数

示例演示

&#13;
&#13;
(function(){
    setTimeout(function(){
        document.querySelector(".callnow a").innerHTML = "Call Now";
    }, 1000);
})()
&#13;
<span id="callnow" class="mhMobile callnow"><a href="tel:01234567890">01234567890</a></span>
&#13;
&#13;
&#13;