【问题标题】:jQuery Children length of an ol一个ol的jQuery儿童长度
【发布时间】:2011-02-25 19:56:39
【问题描述】:

我正在尝试计算 OL 的子元素

jQuery :

$(document).ready(function(){

$("#my_select").change(function(){
    alert($("#ol3").children.length);
                                     });});

HTML:

<ol id="ol1">
    <li class="2">Location 1-1</li>
</ol>

<ol id="ol2">
    <li class="15">Location 2-1</li>
    <li class="20">Location 2-2</li>
</ol>

<ol id="ol3">
    <li class="17">Location 3-1</li>
    <li class="16">Location 3-2</li>
    <li class="14">Location 3-3</li>
</ol>

不管ol下面有多少里,我总是得到数字2。

知道发生了什么吗..?

【问题讨论】:

    标签: jquery html children


    【解决方案1】:

    试试

    $("#ol3").children().length \\ you missed () in children...
    

    当您执行$("#ol3").children.length 时,它会返回.children() 函数中的参数数量...

    尝试提醒$("#ol3").children 你会得到这个...

    function (d,f){var e=c.map(this,b,d);eb.test(a)||(f=d);if(f&&typeof f==="string")e=c.filter(f,e);e=this.length>1?c.unique(e):e;if((this.length>1||gb.test(f))&&fb.test(a))e=e.reverse();return this.pushStack(e,a,R.call(arguments).join(","))}
    

    其中df 是两个参数...这就是为什么当您发出警报时总是在代码中得到 2..

    【讨论】:

    • :) 谢谢!这很简单。
    【解决方案2】:

    尝试children() 而不是children

    对于腰带和吊带的方法,请尝试children('li')

    【讨论】:

    • :) 谢谢!这很简单。
    • 我喜欢“腰带和吊带”这个说法
    【解决方案3】:

    你也可以使用 .size() 代替 .length()

    任何一个都可以,虽然 .length() 应该更快。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-04-20
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多