jQuery:计算列表元素的数量?

Tom*_*Tom 134 html jquery

我有一个从一些服务器端代码生成的列表,在使用jQuery添加额外的东西之前我需要弄清楚它中已经有多少项.

<ul id="mylist">
    <li>Element 1</li>
    <li>Element 2</li>
</ul>
Run Code Online (Sandbox Code Playgroud)

cle*_*tus 220

尝试:

$("#mylist li").length
Run Code Online (Sandbox Code Playgroud)

只是好奇:为什么你需要知道大小?你不能只使用:

$("#mylist").append("<li>New list item</li>");
Run Code Online (Sandbox Code Playgroud)

  • 请注意,jQyery文档建议在`.size()`上使用`.length`以避免函数调用的开销.http://api.jquery.com/size/ (35认同)
  • @ gloomy.penguin请注意`.length`不是函数. (8认同)
  • [size()在jquery 1.8](http://api.jquery.com/size/)中已弃用,它现在说使用[length()](http://api.jquery.com/length/). (4认同)
  • 我正在使用添加新的,但我对列表中可以包含的项目数量有限制,在这种状态下,用户仍然可以添加最多4项,但可能有2项从以前的状态.:) (3认同)

Nic*_*len 51

var listItems = $("#myList").children();

var count = listItems.length;
Run Code Online (Sandbox Code Playgroud)

当然你可以用这个来浓缩

var count = $("#myList").children().length;
Run Code Online (Sandbox Code Playgroud)

有关jQuery的更多帮助,http://docs.jquery.com/Main_Page是一个很好的起点.

  • 为了安全起见,请执行$("#myList").children("li").length; 如果您因任何原因在列表中添加其他项目,则不会忘记这一小段代码. (5认同)

Ale*_*yen 10

调用.size()方法或.length属性时会得到相同的结果,但首选.length属性,因为它没有函数调用的开销.所以最好的方法:

$("#mylist li").length
Run Code Online (Sandbox Code Playgroud)