Форум: "Прочее";
Текущий архив: 2007.12.23;
Скачать: [xml.tar.bz2];
ВнизКак лучше всего организовать следующие действия Найти похожие ветки
← →
Cyrax © (2007-11-23 17:57) [0]Как лучше организовать следующие действия.
Имеется произвольное число таблиц, каждая из которых содержит произвольное число строк (tr). Всё зависит от содержимого БД. В каждой строке в первой ячейке имеется checkbox. При щелчке мышью по checkbox"у (ставим или снимаем галочку) по событию onCheck javascript"ами меняем цвет фона строки (tr), в которой находится checkbox. Т.е. выделяем строку при установке галочки в соответствующем checkbox"е и закрашиваем в обычный цвет при снятии галочки.
Далее имеется кнопка reset (input type=reset), которая снимает все галочки. При этом необходимо самому установить цвет фона всех строк в обычный (невыделенный) цвет.
Как это проще всего сделать ? Учитываем, что число таблиц и строк в каждой таблице - произвольное. Было бы неплохо перебрать все checkbox"ы определённого класса...
← →
Johnmen © (2007-11-23 18:02) [1]Это надо программу писать...
← →
oldman © (2007-11-23 18:05) [2]Кажется, событие OnCheck должно срабатывать и при снятии всех галочек.
Надо смотреть код операции reset.
← →
clickmaker © (2007-11-23 18:06) [3]var iCount = document.all.length;
for ( var i=0; i < iCount; i++ )
{
e = document.all[i];
if (e.tagName == "INPUT" && e.type == "checkbox" &&
e.className == "myCheck")
{
e.checked = false;
}
}
← →
wicked © (2007-11-23 18:56) [4]так правильней и кроссбраузерней
var elem_array = document.getElementsByTagName("INPUT");
var iCount = elem_array.length;
for ( var i=0; i < iCount; i++ )
{
var e = elem_array[i];
if (e.type == "checkbox" && e.className == "myCheck")
{
e.checked = false;
}
}
для автора темы:
а еще правильней оформить такие штуки в функции
а еще можно "приклеивать" к элементам DOM свои свойства, которые потом и читать
← →
Cyrax © (2007-11-23 21:54) [5]
> Кажется, событие OnCheck должно срабатывать и при снятии
> всех галочек.
По-моему, события OnCheck вообще нет... Тока OnClick...
> Надо смотреть код операции reset
Где его посмотреть ?..
Организовал цикл по input"ам. Всё нормально работает.
Сложно что-то делать в условиях жёсткого ограничения времени. Даже документацию почитать времени нет...
← →
Мазут Береговой (2007-11-24 11:05) [6]Вот самый простой вариант на галочку:
<HTML>
<HEAD></HEAD>
<BODY>
<TABLE>
<tr><td><input type="checkbox" onClick="doclick(this)" id="chk01" /></td><td>1</td></tr>
<tr><td><input type="checkbox" onClick="doclick(this)" id="chk02" /></td><td>2</td></tr>
<tr><td><input type="checkbox" onClick="doclick(this)" id="chk03" /></td><td>3</td></tr>
<tr><td><input type="checkbox" onClick="doclick(this)" id="chk04" /></td><td>4</td></tr>
<tr><td><input type="checkbox" onClick="doclick(this)" id="chk05" /></td><td>5</td></tr>
</TABLE>
<script>
function doclick(el)
{
if(el.checked) el.parentNode.parentNode.style.backgroundColor = "red";
else el.parentNode.parentNode.style.backgroundColor = "white";
}
</script>
</BODY>
</HTML>
Параметры цвета можно сохранить в глобальной переменной в разделе <HEAD> или в этом же скрипте... или можно подать в функцию через параметры...
el.parentNode.parentNode - обращается к элементу <tr>...
Ну а как все отчекать или расчекать уже сказали...
← →
Cyrax © (2007-11-24 20:55) [7]Мазут Береговой, собственно, я так и сделал...
Страницы: 1 вся ветка
Форум: "Прочее";
Текущий архив: 2007.12.23;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.046 c