Получение диапазона элементов в одном селекторе jQuery - PullRequest
12 голосов
/ 23 декабря 2009

Моя проблема в том, что у меня есть таблица, но я хочу только подмножество строк, от первого индекса до последнего индекса. Я думал, что вы могли бы сделать это так:

$('table tr:gt(2):lt(5)');

Я думал, что это даст вам только строки № 3 и № 4, но в итоге получится больше. Как я могу сказать селектору выбирать только строки № 3 и № 4?

Ответы [ 3 ]

19 голосов
/ 23 декабря 2009

Вы довольно близки, но проблема в вашем селекторе - фильтр :lt(5).

Вы бы хотели что-то вроде:

$('table tr:gt(2):lt(2)');

Разница в том, что к моменту применения фильтра lt() первые три элемента уже были удалены из набора (с помощью фильтра gt()). Таким образом, это захватит 3-й и 4-й элемент (с нулевым индексом) вместо 3-го до 8-го.

10 голосов
/ 23 декабря 2009

Как насчет $ ('table tr'). Slice (2, 4)

Поскольку массивы JavaScript проиндексированы 0, это даст вам третью и четвертую строку таблицы. Slice будет по-прежнему возвращать упакованный (под) набор jQuery, так что это тот же конечный результат.

0 голосов
/ 23 декабря 2009

Я полагаю, что вы это поняли, хотя я бы предположил, что jQuery будет считать от 0 в индексе элементов.

Так будет ли это gt (1) и lt (4)?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...