0

リボンにハイパーリンクを追加したい。既存のdivにハイパーリンクを追加することができました。リボンは私が行うすべてのアクションで更新されるため、ハイパーリンクが増加しています。

divをクリアして、1つのリンクのみを使用可能にするにはどうすればよいですか。

私は次のコードを使用しています:

var mydiv = document.getElementById("myDiv");
var aTag = document.createElement('a'); 
aTag.setAttribute('href',"yourlink.htm");  
aTag.innerHTML = "link text";
mydiv.appendChild(aTag); 
4

6 に答える 6

2

jQueryにはempty()関数があります。純粋なJSを使用している場合は、タグmydiv.innerhtml = ""を追加する前にいつでも行を追加できます。<a>

于 2012-08-10T05:25:55.347 に答える
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; 
于 2012-08-10T05:26:26.500 に答える
0

リボン「myDiv」であると仮定します

mydiv.innerHTML = ""

mydiv.appendChild(aTag);
于 2012-08-10T05:23:53.123 に答える
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);
}
于 2012-08-10T05:34:45.793 に答える
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>
于 2012-08-10T05:37:03.640 に答える
0

これを試して

var aTag = "<a href='yourlink.htm' > </a>";
document.getElementById("myDiv").innerHtml = aTag ;
于 2012-08-10T05:42:07.117 に答える