jQuery: подсчитать количество элементов списка? - PullRequest
134 голосов
/ 03 марта 2009

У меня есть список, сгенерированный из некоторого кода на стороне сервера, и прежде чем добавлять в него дополнительный материал с помощью jQuery, мне нужно выяснить, сколько элементов уже в нем.

<ul id="mylist">
    <li>Element 1</li>
    <li>Element 2</li>
</ul>

Ответы [ 9 ]

220 голосов
/ 03 марта 2009

Попробуйте:

$("#mylist li").length

Просто любопытно: зачем вам знать размер? Разве вы не можете просто использовать:

$("#mylist").append("<li>New list item</li>");

51 голосов
/ 03 марта 2009
var listItems = $("#myList").children();

var count = listItems.length;

Конечно, вы можете сжать это с

var count = $("#myList").children().length;

Для получения дополнительной помощи с jQuery, http://docs.jquery.com/Main_Page - хорошее место для начала.

10 голосов
/ 23 июля 2012

У вас тот же результат при вызове метода .size () или свойства .length, но свойство .length предпочтительнее, так как оно не имеет накладных расходов на вызов функции. Итак, лучший способ:

$("#mylist li").length
4 голосов
/ 24 марта 2011

и, конечно, следующее:

var count = $("#myList").children().length;

может быть сокращено до: (удаляя переменную var, которая не обязательна для установки переменной)

count = $("#myList").children().length;

однако это чище:

count = $("#mylist li").size();
4 голосов
/ 03 марта 2009

Я думаю, что это должно сделать это:

var ct = $('#mylist').children().size(); 
3 голосов
/ 20 ноября 2013

1001 * попробовать *

$("#mylist").children().length
1 голос
/ 30 августа 2015

Подсчет количества элементов списка

alert($("#mylist > li").length);
0 голосов
/ 29 августа 2018

$("button").click(function(){
    alert($("li").length);
 });
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.2.3/jquery.min.js"></script>
<!DOCTYPE html>
<html>
<head>
<script src="//code.jquery.com/jquery-1.11.1.min.js"></script>
  <meta charset="utf-8">
  <title>Count the number of specific elements</title>
</head>
<body>
<ul>
  <li>List - 1</li>
  <li>List - 2</li>
  <li>List - 3</li>
</ul>
  <button>Display the number of li elements</button>
</body>
</html>
0 голосов
/ 29 августа 2018

Другой подход к подсчету количества элементов списка:

var num = $("#mylist").find("li").length;
console.log(num);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<ul id="mylist">
  <li>Element 1</li>
  <li>Element 2</li>
  <li>Element 3</li>
  <li>Element 4</li>
  <li>Element 5</li>
</ul>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...