226

<div id="masterdiv">いくつかの子を持つdivがあり<div>ます。

例:

<div id="masterdiv">
  <div id="childdiv1" />
  <div id="childdiv2" />
  <div id="childdiv3" />
</div>

jQueryを使用し<div>てマスター内のすべての子の内容をクリアするにはどうすればよいですか?<div>

4

14 に答える 14

459

jQueryのempty()関数はまさにそれを行います:

$('#masterdiv').empty();

マスターをクリアしますdiv

$('#masterdiv div').empty();

すべての子をクリアしますdivが、マスターはそのまま残します。

于 2009-11-09T16:11:39.253 に答える
276
jQuery('#masterdiv div').html('');
于 2009-11-09T16:05:28.603 に答える
23

jQuery の CSS セレクター構文を使用してdiv、要素内のすべての要素を id で選択しますmasterdiv。次に、呼び出しempty()て内容をクリアします。

$('#masterdiv div').empty();

text('')orを使用html('')すると文字列の解析が行われますが、これは一般に DOM を操作する場合にはお勧めできません。可能な限り、DOM オブジェクトの文字列表現を含まない DOM 操作メソッドを試して使用してください。

于 2010-08-22T19:45:56.450 に答える
14

これが関連する質問であることは知っていますが、jQuery誰かが純粋なJavascript解決策を期待してここに来る可能性があると思います。したがって、 を使用してこれを実行しようとしている場合はjs、プロパティを使用innerHTMLして空の文字列に設定できます。

document.getElementById('masterdiv').innerHTML = '';
于 2020-02-29T14:28:41.880 に答える
12

そのmasterdiv内のすべてのdivをクリアする必要がある場合は、これです。

$('#masterdiv div').html('');

それ以外の場合は、#masterdivのすべてのdiv子を反復処理し、idがchilddivで始まるかどうかを確認する必要があります。

$('#masterdiv div').each(
    function(element){
        if(element.attr('id').substr(0, 8) == "childdiv")
        {
            element.html('');
        }
    }
 );
于 2009-11-09T16:06:28.530 に答える
7
$("#masterdiv div").text("");
于 2009-11-09T16:05:25.460 に答える
6
$("#masterdiv > *").text("")

また

$("#masterdiv").children().text("")
于 2009-11-09T16:07:20.573 に答える
5

サービスまたはデータベースを使用して id でデータを div に追加する場合は、最初に次のように空にしてみてください。

var json = jsonParse(data.d);
$('#divname').empty();
于 2017-05-10T05:51:48.377 に答える
4
$("#masterdiv div[id^='childdiv']").each(function(el){$(el).empty();});

また

$("#masterdiv").find("div[id^='childdiv']").each(function(el){$(el).empty();});
于 2009-11-09T16:23:49.823 に答える