<div id="masterdiv">
いくつかの子を持つdivがあり<div>
ます。
例:
<div id="masterdiv">
<div id="childdiv1" />
<div id="childdiv2" />
<div id="childdiv3" />
</div>
jQueryを使用し<div>
てマスター内のすべての子の内容をクリアするにはどうすればよいですか?<div>
<div id="masterdiv">
いくつかの子を持つdivがあり<div>
ます。
例:
<div id="masterdiv">
<div id="childdiv1" />
<div id="childdiv2" />
<div id="childdiv3" />
</div>
jQueryを使用し<div>
てマスター内のすべての子の内容をクリアするにはどうすればよいですか?<div>
jQueryのempty()
関数はまさにそれを行います:
$('#masterdiv').empty();
マスターをクリアしますdiv
。
$('#masterdiv div').empty();
すべての子をクリアしますdiv
が、マスターはそのまま残します。
jQuery('#masterdiv div').html('');
jQuery の CSS セレクター構文を使用してdiv
、要素内のすべての要素を id で選択しますmasterdiv
。次に、呼び出しempty()
て内容をクリアします。
$('#masterdiv div').empty();
text('')
orを使用html('')
すると文字列の解析が行われますが、これは一般に DOM を操作する場合にはお勧めできません。可能な限り、DOM オブジェクトの文字列表現を含まない DOM 操作メソッドを試して使用してください。
これが関連する質問であることは知っていますが、jQuery
誰かが純粋なJavascript
解決策を期待してここに来る可能性があると思います。したがって、 を使用してこれを実行しようとしている場合はjs
、プロパティを使用innerHTML
して空の文字列に設定できます。
document.getElementById('masterdiv').innerHTML = '';
そのmasterdiv内のすべてのdivをクリアする必要がある場合は、これです。
$('#masterdiv div').html('');
それ以外の場合は、#masterdivのすべてのdiv子を反復処理し、idがchilddivで始まるかどうかを確認する必要があります。
$('#masterdiv div').each(
function(element){
if(element.attr('id').substr(0, 8) == "childdiv")
{
element.html('');
}
}
);
$("#masterdiv div").text("");
$("#masterdiv > *").text("")
また
$("#masterdiv").children().text("")
サービスまたはデータベースを使用して id でデータを div に追加する場合は、最初に次のように空にしてみてください。
var json = jsonParse(data.d);
$('#divname').empty();
$("#masterdiv div[id^='childdiv']").each(function(el){$(el).empty();});
また
$("#masterdiv").find("div[id^='childdiv']").each(function(el){$(el).empty();});