J'ai un div <div id="masterdiv">
qui a plusieurs enfants <div>
s.
Exemple:
<div id="masterdiv">
<div id="childdiv1" />
<div id="childdiv2" />
<div id="childdiv3" />
</div>
Comment effacer le contenu de tous les enfants <div>
s à l'intérieur du maître <div>
à l'aide de jQuery?
jQuery('#masterdiv div').html('');
la fonction empty()
de jQuery ne fait que cela:
$('#masterdiv').empty();
efface le maître div
.
$('#masterdiv div').empty();
efface tous les enfants div
s, mais laisse le maître intact.
Utilisez la syntaxe du sélecteur CSS de jQuery pour sélectionner tous les éléments div
à l'intérieur de l'élément portant l'id masterdiv
. Puis appelez empty()
pour effacer le contenu.
$('#masterdiv div').empty();
Utiliser text('')
ou html('')
provoquera une analyse syntaxique de chaîne, ce qui est généralement une mauvaise idée lorsque vous travaillez avec le DOM. Essayez d'utiliser des méthodes de manipulation du DOM qui n'impliquent pas de représentation sous forme de chaîne d'objets DOM dans la mesure du possible.
Si tous les divs dans cette division principale doivent être effacés, c’est ça.
$('#masterdiv div').html('');
sinon, vous devez parcourir tous les enfants div de #masterdiv et vérifier si l'identifiant commence par childdiv.
$('#masterdiv div').each(
function(element){
if(element.attr('id').substr(0, 8) == "childdiv")
{
element.html('');
}
}
);
La meilleure façon est:
$( ".masterdiv" ).empty();
jQuery vous recommande d'utiliser ".empty ()", ". remove ()", ". detach ()"
si vous avez besoin de supprimer tous les éléments d'un élément, utilisez ce code:
$('#target_id').empty();
si vous avez besoin de supprimer tous les éléments, utilisez ce code:
$('#target_id').remove();
i et jQuery group ne sont pas recommandés SET FUNCTION comme .html () .attr () .text (), qu'est-ce que c'est? c'est SI VOUS VOULEZ définir ce dont vous avez besoin
ref: https://learn.jquery.com/using-jquery-core/manipulating-elements/
$("#masterdiv div").text("");
$("#masterdiv > *").text("")
ou
$("#masterdiv").children().text("")
Vous pouvez utiliser la fonction .empty () pour effacer tous les éléments enfants
$(document).ready(function () {
$("#button").click(function () {
//only the content inside of the element will be deleted
$("#masterdiv").empty();
});
});
Pour voir la comparaison entre jquery .empty (), .hide (), .remove () et .detach () suivez ici http://www.voidtricks.com/jquery-empty-hide-remove-detach /
$('#div_id').empty();
ou
$('.div_class').empty();
Fonctionne bien pour supprimer le contenu dans une div
Lorsque vous ajoutez des données à div par id à l'aide d'un service ou d'une base de données, essayez-le d'abord vide, comme ceci:
var json = jsonParse(data.d);
$('#divname').empty();
$("#masterdiv div[id^='childdiv']").each(function(el){$(el).empty();});
ou
$("#masterdiv").find("div[id^='childdiv']").each(function(el){$(el).empty();});
essayez-les si cela vous aide.
$('.div_parent .div_child').empty();
$('#div_parent #div_child').empty();