2017-02-13 3 views
1

•他のdivを削除するこんにちは、私はこれらのようないくつかのdiv持っている場合:私は上の文字のTを持つ唯一のDIVを示し、他のを隠すためにJavaScriptを使用して必要とidを持つdivが特定のテキストはJavascript

<div id="404.4T:"></div> 
<div id="404.4R:"></div> 
<div id="404.4P:"></div> 
<div id="404.4B:"></div> 

を...私は4つのボタンを持っているし、それぞれが選択されたル文字でdivタグを表示... 私はこのコードを見つけました:

function myFunction0() { 
    var divs = document.getElementsByTagName("div"); 
    for (var i = divs.length; i;) { 
     var div = divs[--i]; 
     if (div.id.indexOf("P:") > -1) { 
      div.parentNode.removeChild(div); 
     } 
    } 
} 

それは動作しますが、私は再びPとdivを表示することはできません。 Davideありがとうございます。

+0

DOMから削除するため、再度表示することはできません。 CSSを変更する必要があります。おそらくクラスを追加することで、CSSを非表示にする必要があります。 – Tom

答えて

1

あなたがページからそれらを削除したため、display CSSプロパティをnoneに変更して非表示にする必要があります。その後、CSSプロパティーdisplayを `ブロック 'に再度変更することで、それらを表示することができます。

<div id="404.4T:"></div> 
<div id="404.4R:"></div> 
<div id="404.4P:"></div> 
<div id="404.4B:"></div> 
<script> 
function myFunction0() { 
var divs = document.getElementsByTagName("div"); 
for (var i = divs.length; i;) { 
    var div = divs[--i]; 
    if (div.id.indexOf("P:") > -1) { 
     div.style.display = 'none'; 
    } 
}} 
</script> 

そして、あなたはあなたが代わりに削除のdiv要素を非表示にする必要があり

div.style.display = 'block'; 
0

を使用して、それらを切り替えることができます。

// This for hide 
element.style.display= "none"; 
// This to display 
element.style.display= "block"; 
0

ページから要素を削除しています。彼らはもはや存在しない。

div.parentNode.removeChild(div);

へ:この行に変更

// hide, but don't remove, the element 
div.style.display = 'none'; 

をし、再度のdiv表示するためにこれを使用する:あなたが必要な場合は、代わり

// show the element again 
div.style.display = 'block'; 

を、あなたはvisibilityプロパティを試すことができます要素はページ上のスペースを引き続き占めるが、表示されない。隠すにはhiddenを使用し、表示するにはvisibleを使用してください。

関連する問題