Селекторы jQuery: получение раздела детей с заданным тегом - PullRequest
1 голос
/ 11 октября 2010

Скажем, у меня есть произвольное число детей (например, "td" s) данного элемента (например, "tr"), и мне нужно захватить определенное количество из них (скажем, 4) в данной позиции (скажем,, 3; в этом случае 3-6 7 ).Как бы лучше всего выглядел этот запрос?

Обратите внимание, что я могу иметь дело с потенциально тысячами детей, поэтому я бы не хотел разбивать массивы на тысячи на обычной основе.

Редактировать: Не нужно проходить через jQuery, если есть более эффективный вариант, который идет прямо в DOM ...

1 Ответ

6 голосов
/ 11 октября 2010

Для этого вы можете использовать .slice(), например:

$("tr td").slice(2, 7)
//of if you have the <tr>
$(this).children("td").slice(2, 7)

Выше будет получено с 3-го по 7-е <td>, так как это 0на основе индекса.Или версия без jQuery, скажем, у вас есть элемент <tr> DOM:

var tds = tr.getElementsByTagName("td");
for(var i = 2; i<7; i++) {
  //do something
}

Вы можете протестировать обе версии здесь .

...