javascript - 如何使这个 jQuery 不计算列表中的子列表?

标签 javascript jquery html html-lists

我想知道 HTML 列表中有多少个“根”步骤。我将迭代根步骤,但子步骤将被完全忽略。

我的 jQuery 总是计算根 <li>脚步和 child 一样<li>步骤,但我想要的只是根。

fiddle :https://jsfiddle.net/5x33omaw/1/

我希望它只计算 3 步,而不是返回的 5 步。我怎么能忽视 child 呢?

HTML:

<ol id="sidebar-step-list" class="no-indent">
    <li>Step 1</li>
    <li>Step 2
        <ul>
            <li>Substep 1</li>
            <li>Substep 2</li>
        </ul>
    </li>
    <li>Step 3</li>
</ol>
<hr/>
<div id="dog"></div>

JavaScript/jQuery

var stepList = $("#sidebar-step-list li");
var length = stepList.length;

$("#dog").text("Number of steps: " + length);

最佳答案

只需添加>符号

var stepList = $("#sidebar-step-list > li");

通过添加>将为您提供#sidebar-step-list的直接li

DEMO

关于javascript - 如何使这个 jQuery 不计算列表中的子列表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30879552/

相关文章:

javascript - 如何使用纯 javascript 将 css 边距值转换为像素?

javascript - 相对于其直接父元素放置绝对定位元素

html - 关闭 CSS 下拉菜单 onclick

jquery - 复选框 : how to display elsewhere? 的验证规则

javascript - Translate3d 在 fullpage.js 中无法正常工作

javascript - 在 Javascript 中按值获取表单元素

javascript - 惊人的 CSS 动画

javascript - 在运行时调用自定义方法进行表单验证

javascript - 正则表达式查找模式,返回子模式

javascript - 如何在不重新加载页面的情况下填充div