【发布时间】:2015-12-27 04:30:48
【问题描述】:
我有一个 div 结构,如下面的代码所示。可能有多个父 div 的 id 为 p0、p1、p2 等。我试图直接在一个 id 以p 开头的 div 下找到子 div。我需要将空子 div 与非空子 div 分开查找。
当我运行下面的代码时,getEmptyDivs 方法返回 0 个元素,而 getNonEmptyDivs 方法返回 12 个元素,其中包括所有子空以及非空 div。
此问题的演示位于以下 URL:demo code sample
不返回正确数量元素的示例代码
<div id='p0'>
<div>some content</div>
<div></div>
<div>some content</div>
<div></div>
<div>some content</div>
<div>some content</div>
</div>
<div id='p1'>
<div>some content</div>
<div></div>
<div>some content</div>
<div></div>
<div>some content</div>
<div>some content</div>
</div>
<button type="button" onclick="var x = getEmptyDivs(); alert(x.length);">Get Empty Divs</button>
<button type="button" onclick="var x = getNonEmptyDivs(); alert(x.length);">Get Non-Empty Divs</button>
<script>
function getEmptyDivs() {
return $("div[id^='p'] > div[innerHTML='']");
}
function getNonEmptyDivs() {
return $("div[id^='p'] > div[innerHTML!='']");
}
</script>
我已经尝试了上面的代码,但它返回的元素数量不正确。
问题:我可以使用什么选择器来获取 id 以 p 开头的 div 下的所有空 div 元素的列表,以及用于获取类似非空 div 的选择器?
【问题讨论】:
标签: jquery html jquery-selectors