|
|
|
| Подскажите как реализовать следующее:
при клике по ссылке (показать), в таблице отображаются некоторые прежде невидимые строки, а надпись ссылки меняется (скрыть), при повторном клике - они вновь прячутся. | |
|
|
|
|
|
|
|
для: sponge
(03.01.2008 в 03:34)
| |
function swhd() {
if (document.getElementById('s').style.display == "none") {
document.getElementById('s').style.display = "block";
document.getElementById('b').innerHTML = "Скрыть";
} else {
document.getElementById('s').style.display = "none";
document.getElementById('b').innerHTML = "Показать";
}
}
</SCRIPT>
<SPAN ID="b" STYLE="cursor: pointer;" ONCLICK="swhd()">Показать</SPAN>
<TABLE>
<TR ID="s" STYLE="display: none;">
<TD>text</TD>
<TD>text</TD>
</TR>
</TABLE>
|
| |
|
|
|
|
|
|
|
для: sim5
(03.01.2008 в 04:39)
| | У меня в таблице несколько столбцов, с display:block вся строка вписывается только в первый столбец. и если много раз нажимать спрятать/показать, то каждый раз появляется лишняя белая полоска и таблица растет
корректно работает только в ИЕ7, в фф и опера нет( | |
|
|
|
|
|
|
|
для: sponge
(03.01.2008 в 14:20)
| | Пишите display: none и display: '' | |
|
|
|
|
|
|
|
для: sim5
(03.01.2008 в 14:23)
| | спасибо! так работает!
а обычно именно так и решают подобные задачи? просто нашел на некотором сайте аналогичную вещь, но слишком уж мудрено было сделано, ничего не понял. | |
|
|
|
|
|
|
|
для: sponge
(03.01.2008 в 14:28)
| | Ну значит используйте то, что проще и понятно вам. :) То, что вы видели, скорее всего выполняет больше задач, чем просто скрыть/показать. | |
|
|
|
|
|
|
|
для: sim5
(03.01.2008 в 14:36)
| | Что-то я сразу просмотрел. А как сделать так, чтобы сразу несколько строк отображать/скрывать?) | |
|
|
|
|
|
|
|
для: sponge
(03.01.2008 в 14:55)
| | Ну если это последовтельно несколько строк, и именно в таблице, то проще вложить их в TR, чтобы обращаться к одному объекту, но можно указывать и несколько объектов TR (по их ID). | |
|
|
|
|
|
|
|
для: sim5
(03.01.2008 в 15:04)
| | Что-то не я не совсем понимаю как вложить несколько TR в один. Указывать id каждого не совсем хорошо, очень много их. | |
|
|
|
|
|
|
|
для: sponge
(03.01.2008 в 15:17)
| | Не TR в TR, а в ячейку скрываемого TR вложить то что нужно скрыть. Очень много это сколько? | |
|
|
|
|
|
|
|
для: sim5
(03.01.2008 в 15:54)
| | порядка 20.. ну это явно не лучший вариант все писать!!!
вот посоветовали childnodes перебрать все элементы, только как это сделать пкоа не знаю)
> Не TR в TR, а в ячейку скрываемого TR вложить то что нужно скрыть.
так у меня скрываются именно сами строки..
т.е.
<table>
<tr><td>a</td><td>b</td></tr>
<!-- строки, скрывающиеся по клику -->
<tr><td>c</td><td>d</td></tr>
<tr><td>e</td><td>f</td></tr>
<tr><td>g</td><td>h</td></tr> | |
|
|
|
|
|
|
|
для: sponge
(03.01.2008 в 16:11)
| | Можно и в цикле перебрать эелементы таблицы, и соответсвующие id спрятать. Можно и так поступить:
<TR это скрываемый id><TD><TABLE><TR><TD>это таблица со скрываемыми ячейками</TD></TR></TABLE></TD></TR>
Вам виднее, ведь вы лучше представляете то, что хотите сделать. | |
|
|
|