我有一个功能,将一些HTML附加到元素。它可能会被多次调用,所以我只希望它将HTML附加到尚未添加HTML的元素。
例:
<div class="divToAppendTo"></div> <div class="divToAppendTo"><span class="myAppendedMarkup"></span></div>
因此,我想选择没有.myAppendedMarkup的直接子代的所有.divToAppendTo
我的刺痛似乎不起作用:
$(".divToAppendTo:not(>span.myAppendedMarkup)")
当我打电话时总是附加(从而复制内容)。
解决方法
尝试
$("div.divToAppendTo:not(:has(span.myAppendedMarkup))")
要么
$("div.divToAppendTo").filter(function() { return $(this).children('span.myAppendedMarkup').length == 0; });