У меня есть таблица. В этой таблице имеют избранный элемент. Как может я находить, в котором строка таблицы является избранным элементом из обработчика событий выбора:
$('#selectElemID').live('change', function(){...});
Спасибо
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:
also:
$('#selectElemID').live('change', function(){
alert($(this).closest("tr")[0].rowIndex);
});