我想在功能区上添加超链接。我能够将超链接添加到现有div。由于我的每一个动作都会刷新功能区,因此超链接会逐渐增加。
如何清除div并只提供一个链接。
我使用以下代码:
var mydiv = document.getElementById("myDiv");
var aTag = document.createElement('a');
aTag.setAttribute('href',"yourlink.htm");
aTag.innerHTML = "link text";
mydiv.appendChild(aTag);
答案 0 :(得分:2)
jQuery具有empty()功能。如果您只是使用纯JS,则可以在添加mydiv.innerhtml = ""
标记之前添加行<a>
。
答案 1 :(得分:1)
这可能适合你:
var mydiv = document.getElementById("myDiv");
var aTag = document.createElement('a');
aTag.setAttribute('href',"yourlink.htm");
aTag.innerHTML = "link text";
mydiv.innerHTML="";
mydiv.innerHTML=aTag;
答案 2 :(得分:0)
假设功能区是“myDiv”
mydiv.innerHTML = ""
前
mydiv.appendChild(aTag);
答案 3 :(得分:0)
var mydiv = document.getElementById("myDiv");
var aTag = document.createElement('a');
aTag.setAttribute('href',"yourlink.htm");
aTag.innerHTML = "link text";
if( mydiv.firstChild ){
mydiv.replaceChild(aTag, mydiv.firstChild);
}else{
mydiv.appendChild(aTag);
}
答案 4 :(得分:0)
此方法不仅删除子(和其他后代)元素,还删除匹配元素集中的任何文本。这是因为,根据DOM规范,元素中的任何文本字符串都被视为该元素的子节点。请考虑以下HTML:
<div class="container">
<div class="hello">Hello</div>
<div class="goodbye">Goodbye</div>
</div>
我们可以定位任何要删除的元素:
$('.hello').empty();
这将导致删除了Hello文本的DOM结构:
<div class="container">
<div class="hello"></div>
<div class="goodbye">Goodbye</div>
</div>
答案 5 :(得分:0)
试试这个
var aTag = "<a href='yourlink.htm' > </a>";
document.getElementById("myDiv").innerHtml = aTag ;