Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/74.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery 得到每个第一级李_Jquery_Each - Fatal编程技术网

Jquery 得到每个第一级李

Jquery 得到每个第一级李,jquery,each,Jquery,Each,我有这个清单 <ul> <li> <ul> <li></li> <li></li> <li></li> </ul> </li> <li></li> <li></li> <li>

我有这个清单

<ul>
    <li>
       <ul>
           <li></li>
           <li></li>
           <li></li>
       </ul>
    </li>
    <li></li>
    <li></li>
    <li></li>
</ul>
我只需要一级的lis


提前感谢

假设第一个
ul
body
的直接子项,您可以使用此选择器:

$('body > ul > li');

假设第一个
ul
body
的直接子项,则可以使用此选择器:

$('body > ul > li');

您不能使用直接子选择器吗

$("body > ul > li")
只应返回ul直接子项的li标签,而:

$("ul li")
将返回所有子代li标记,并将在ul的所有级别下查找li子代

如果你在UL上加上一个ID,你想得到第一级的li标签,那么整个选择器将会工作得更好。然后,您的选择器可以是:

$("#myID > li")

它将独立于它在DOM中的位置(而第一个必须是body标记的直接子项才能工作)。

您不能使用直接子项选择器吗

$("body > ul > li")
只应返回ul直接子项的li标签,而:

$("ul li")
将返回所有子代li标记,并将在ul的所有级别下查找li子代

如果你在UL上加上一个ID,你想得到第一级的li标签,那么整个选择器将会工作得更好。然后,您的选择器可以是:

$("#myID > li")

它将独立于它在DOM中的位置(而第一个必须是body标记的直接子项才能工作)。

尝试将其作为通用应用程序:

$('ul').filter(function(){
    return ($(this).closest('li').length == 0);
}).children('li');
来自@Kokos或@jfriend00的答案都很好。唯一的问题是
不是
的直接后代


如果这是一个一次性的场景,也许可以发布更多关于它的信息,我们可以指定;否则,在不了解更多有关文档结构的信息的情况下,需要进行全面概括(见上文)。

尝试使其尽可能通用:

$('ul').filter(function(){
    return ($(this).closest('li').length == 0);
}).children('li');
来自@Kokos或@jfriend00的答案都很好。唯一的问题是
不是
的直接后代


如果这是一个一次性的场景,也许可以发布更多关于它的信息,我们可以指定;否则,在不了解更多文档结构的情况下,需要进行全面概括(见上文)。

在Kokos和jfriend00答案之上,您可以使用:

$(selector).children();

仅选择选择器的直接子对象。如果您已经在选择器中选择了该HTML,只需选择它的子项即可。

在Kokos和jfriend00答案之上,您可以使用:

$(selector).children();
仅选择选择器的直接子对象。如果您已经在选择器中选择了该HTML,只需选择它的子项即可