我有一个div <div id="masterdiv">,它有几个子<div>s。

例子:

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

如何使用jQuery清除所有子<div>的内容里面的主<div> ?


当前回答

我知道这是一个与jQuery相关的问题,但我相信有些人可能会期待一个纯Javascript的解决方案。所以,如果你试图使用js来做这件事,你可以使用innerHTML属性并将其设置为空字符串。

document.getElementById('masterdiv').innerHTML = '';

其他回答

当你使用任何服务或数据库通过id将数据追加到div中时,首先尝试它是空的,就像这样:

var json = jsonParse(data.d);
$('#divname').empty();
jQuery('#masterdiv div').html('');

如果masterdiv中的所有div都需要被清除,它是这样的。

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

否则,您需要迭代#masterdiv的所有子div,并检查id是否以childdiv开头。

$('#masterdiv div').each(
    function(element){
        if(element.attr('id').substr(0, 8) == "childdiv")
        {
            element.html('');
        }
    }
 );

我知道这是一个与jQuery相关的问题,但我相信有些人可能会期待一个纯Javascript的解决方案。所以,如果你试图使用js来做这件事,你可以使用innerHTML属性并将其设置为空字符串。

document.getElementById('masterdiv').innerHTML = '';

jQuery建议你使用".empty()",".remove()",".detach()"

如果你需要删除元素中的所有元素,使用下面的代码:

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

如果你需要删除所有元素,使用以下代码:

$('#target_id').remove();

i和jQuery小组不建议使用SET函数像.html() .attr() .text(),这是什么?如果你想设置任何你需要的东西

裁判:https://learn.jquery.com/using-jquery-core/manipulating-elements/