Приветствую. Надеюсь на небольшую помощь, ситуация такова:
Есть обычная табличка, в каждой строке которой присутствует галочка, для выделения каждой из строк.
Цель: сделать так, чтобы по клике на галочку, строка в которой она находится - выделялась как-либо (менялся класс).
Сначала было сделано такое, только по клику на саму строку - но был определенный глюк, после чего решил событие на всю строку не вешать. В общем делаю так:// Выбираем все таблицы на странице
var tables = document.getElementsByTagName("table");
for (var i=0; i < tables.length; i++)
{
for(var k=1; k < tables.rows.length; k++)
{
// Определяем строку (для удобства)
var row = tables.rows[k];
// Следующими двумя строками берем первый чекбокс в строке, по которому будем клацать
var firstCell = row.cells[0];
var checkbox = firstCell.firstChild;
// Вещаем событие на клик по чекбоксу
checkbox.onclick = function ()
{
row.className = row.className == "selected" ? "" : "selected";
}
}
}
По логике: в функции при каждой итерации цикла выбрана одна из строк (row), ее чекбокс (checkbox), на который вешается обработчик.
Результат: по клице по любой галочке в любой таблице - выделяется последняя строка последней таблицы. Ну, т.е. примерная причина глюка понятна, но заморочился уже ее решать, со всех сторон постоянно не то, что нужно.