不仅具有特定子元素的ul元素
问题描述:
如何编写jQuery选择器来测试li是否具有至少有一个不是.disabled的li(可能是其他类或根本没有类)的ul。不仅具有特定子元素的ul元素
是的听起来很复杂,但很简单 - 我需要知道是否有内部lis上没有“禁用”类的uls。
喜欢的东西
$("li").filter("*:has(ul:has(li:not(.disabled)))")
答
可以缩短一点,就像这样:
$("li").filter(":has(ul li:not(.disabled))")
You can try it here。由于<li>
是<ul>
的孩子,所以你可以这样引用它,不需要额外的混淆Sizzle(链中的多个:not()
也这样做)。
,除非有一个<ol>
的可能性,你可以远程将ul
部分为好,只是有:
$("li").filter(":has(li:not(.disabled))")
我做了“不(.disabled)”从我的头,没想到,这是可能是一个有效的jQuery选择器;-)这表明jQuery选择器语法非常直观。还要感谢小提琴工具链接,非常有用。 – queen3 2010-07-12 07:40:04