Tengo un div <div id="masterdiv"> que tiene varios hijos <div> s.

Ejemplo:

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

¿Cómo borrar el contenido de todos los hijos <div> s dentro del maestro <div> usando jQuery?

222
Prasad 9 nov. 2009 a las 19:03

14 respuestas

La mejor respuesta
jQuery('#masterdiv div').html('');
265
Quentin 26 nov. 2019 a las 08:37

Pruébalos si te ayuda

$('.div_parent .div_child').empty();

$('#div_parent #div_child').empty();

0
Gaurav Kaushik 13 abr. 2019 a las 09:58

Sé que esta es una pregunta relacionada con jQuery, pero creo que alguien podría llegar esperando una solución pura de Javascript. Entonces, si estaba tratando de hacer esto usando js, podría usar la propiedad innerHTML y establecerla en una cadena vacía.

document.getElementById('masterdiv').innerHTML = '';
1
Alain Cruz 29 feb. 2020 a las 14:28
$("#masterdiv div[id^='childdiv']").each(function(el){$(el).empty();});

O

$("#masterdiv").find("div[id^='childdiv']").each(function(el){$(el).empty();});
4
andres descalzo 19 sep. 2013 a las 12:44

Cuando agregue datos a div por id utilizando cualquier servicio o base de datos, primero inténtelo vacío, así:

var json = jsonParse(data.d);
$('#divname').empty();
5
Pang 10 may. 2017 a las 06:18

Puede usar la función .empty () para borrar todos los elementos secundarios

 $(document).ready(function () {
  $("#button").click(function () {
   //only the content inside of the element will be deleted
   $("#masterdiv").empty();
  });
 });

Para ver la comparación entre jquery .empty (), .hide (), .remove () y .detach (), siga aquí http://www.voidtricks.com/jquery-empty-hide-remove-detach/

6
Anand Roshan 2 oct. 2015 a las 03:43
$('#div_id').empty();

O

$('.div_class').empty();

Funciona bien para eliminar contenidos dentro de un div

6
SysDragon 19 feb. 2015 a las 07:29
$("#masterdiv > *").text("")

O

$("#masterdiv").children().text("")
6
adamse 9 nov. 2009 a las 16:07
$("#masterdiv div").text("");
7
brendan 9 nov. 2009 a las 16:10

La mejor manera es:

 $( ".masterdiv" ).empty();
11
Joe Mike 13 ago. 2014 a las 11:06

Si todos los divs dentro de ese masterdiv necesitan ser borrados, esto.

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

De lo contrario, debe iterar en todos los hijos div de #masterdiv y verificar si la identificación comienza con childdiv.

$('#masterdiv div').each(
    function(element){
        if(element.attr('id').substr(0, 8) == "childdiv")
        {
            element.html('');
        }
    }
 );
11
Govind KamalaPrakash Malviya 9 feb. 2012 a las 15:28

jQuery recomienda usar ".empty ()", ". remove ()", ". detach ()"

Si necesita eliminar todos los elementos en el elemento, use este código:

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

Si necesita eliminar todos los elementos, use este código:

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

i y jQuery group no recomiendan usar SET FUNCTION como .html () .attr () .text (), ¿qué es eso? es SI DESEA CONFIGURAR ALGO QUE NECESITA

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

13
Abdul Aziz Al Basyir 8 jul. 2019 a las 04:48

Use la sintaxis del selector CSS de jQuery para seleccionar todos los elementos div dentro del elemento con la identificación masterdiv. Luego llame a empty() para borrar el contenido.

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

El uso de text('') o html('') provocará que se realice un análisis de cadenas, lo que generalmente es una mala idea cuando se trabaja con DOM. Intente y use métodos de manipulación DOM que no impliquen representaciones de cadenas de objetos DOM siempre que sea posible.

20
Drew Noakes 22 ago. 2010 a las 19:45

La función empty() de jQuery hace exactamente eso:

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

Borra la maestra div.

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

Borra todos los elementos secundarios div s, pero deja el maestro intacto.

441
Alexander Gladysh 7 ago. 2012 a las 06:27