我有一个函数可以将一些 HTML 附加到元素上。它可能会被多次调用,因此我只希望它将 HTML 附加到尚未添加 HTML 的元素。
示例:
<div class="divToAppendTo"></div>
<div class="divToAppendTo"><span class="myAppendedMarkup"></span></div>
因此,我想选择所有没有 .myAppishedMarkup 直接子级的 .divToAppendTo
我的尝试似乎不起作用:
$(".divToAppendTo:not(>span.myAppendedMarkup)")
当我调用它时,它总是附加(从而复制内容)。
最佳答案
尝试
$("div.divToAppendTo:not(:has(span.myAppendedMarkup))")
或
$("div.divToAppendTo").filter(function() {
return $(this).children('span.myAppendedMarkup').length == 0;
});
关于jquery - 使用 jQuery NOT 选择器排除具有特定子元素的元素。,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1730609/