如何替换<span中的超链接?

时间:2015-12-22 19:51:09

标签: javascript html

=“”

我在div中有一个span,我想在每次调用load函数时替换它内部的超链接。目前,我的代码不断追加超链接。有没有办法在每次调用函数时用新的超链接替换超链接?在此先感谢。

注意:我不想清空div。我只想清除范围并插入新的超链接

function load(Url,myImage) {    
  var link = document.createElement('a');
  link.textContent = 'Link';
  link.href = Url;
  document.getElementById('where_to_insert').appendChild(link);
}

和包含范围的div:

<div class="top">
  ....
  ....
  <span id="where_to_insert"></span>
</div>

3 个答案:

答案 0 :(得分:2)

var link = '<a href="' + Url + '">Link</a>';
document.getElementById('where_to_insert').innerHTML = link;

答案 1 :(得分:0)

顶级方法是正确的,但它不会在IE中运行。如果需要,您必须单独创建<a>元素。

所以,大多数crossbrowser代码都会这样:)

var link = document.createElement('a');
link.href = Url;
link.innerHtml = '
document.getElementById('where_to_insert').innerHTML = link;

答案 2 :(得分:0)

每次拨打load

时,是否真的需要创建锚标记?

如果没有,那么您可以使用以下

HTML

<div class="top">
<span id="where_to_insert">
Anchor here
<a href="" id='somAnc'></a>
</span>
</div>

JS

function load(Url,myImage) {    
  document.getElementById('somAnc').href=Url;
}
load('google.com');
setTimeout(function(){   // Just for testing href will be update after 5sec
load('mozilla.com')
},5000)

DEMO HERE