Можете ли вы использовать jquery's: eq () дважды в одном выражении? - PullRequest
0 голосов
/ 02 февраля 2011

Я пытаюсь написать функцию сортировки таблиц, поэтому мне нужно иметь возможность получить HTML-код n-го столбца n-й строки таблицы.Я попробовал следующее, и это не сработало (возвращает ноль, и этот конкретный столбец определенно содержит текст внутри него):

$('tr:eq(3) td(eq(2)').html()

Но позже в коде, когда я использую это, это работаетштраф:

$('tr:eq(3)').attr('id')

Разве нельзя использовать :eq() дважды?Если это так, я неправильно это называю?Если нет, то есть ли способ сделать это по-другому?

Ответы [ 2 ]

4 голосов
/ 02 февраля 2011

@ BoltClock имеет исправление jQuery для вас в своем ответе .

К вашему сведению, вы можете легко получить доступ к строке / столбцу, используя собственные методы.

Из элемента таблицы просто наберите .rows[3].cells[2]. Это будет очень быстрый способ поиска ячеек.

var myTable = $('#theTable')[0];

var html = myTable.rows[3].cells[2].innerHTML;
3 голосов
/ 02 февраля 2011

Ну, у вас есть ( вместо : здесь:

td(eq(2)

Альтернатива :nth-child(), которая использует индексирование на основе 1 вместо 0 на основе:

$('tr:nth-child(4) td:nth-child(3)').html()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...