jQuery - Нахождение номера строки текущего избранного элемента в его обработчике изменений

У меня есть таблица. В этой таблице имеют избранный элемент. Как может я находить, в котором строка таблицы является избранным элементом из обработчика событий выбора:

$('#selectElemID').live('change', function(){...});

Спасибо

11
задан karim79 10 March 2010 в 22:46
поделиться

2 ответа

EDIT (два года спустя): Пожалуйста, не делайте это так, как я описал ранее, это полное расточительство, поскольку строки таблицы уже имеют свойство rowIndex, так что просто нет необходимости что-то вычислять:

$('#selectElemID').live("change", function (){
    alert($(this).closest("tr")[0].rowIndex);
});

Демонстрация.

Это должно сработать, если вам нужен номер строки текущего элемента select (это то, что я понял из вопроса):

$('#selectElemID').live('change', function(){
    alert($(this).closest("tr").prevAll("tr").length + 1);
});

Поясню:

$(this).closest("tr")

означает выбрать ближайшего родителя tr этого элемента select.

.prevAll("tr").length + 1

означает выбрать все предыдущие строки и получить длину возвращаемой коллекции. Увеличьте ее на единицу, чтобы получить номер текущего ряда, потому что мы находимся в total previous rows + 1.

For more information:

36
ответ дан 3 December 2019 в 01:38
поделиться

also:

$('#selectElemID').live('change', function(){
    alert($(this).closest("tr")[0].rowIndex);
});
2
ответ дан 3 December 2019 в 01:38
поделиться
Другие вопросы по тегам:

Похожие вопросы: