2009-03-20 6 views
0

Каков наилучший способ отключить видимость строк (строк) и удалить пробелы. Также наоборот, если включить видимость, убедившись, что видимые строки (ы) отображаются снова.Таблицы HTML-таблицы

ответ

4

Если вы хотите сделать это на клиенте (то есть через javascript), попробуйте установить style.display в «none» (и «block», чтобы включить его).

Если вы хотите обработать его на сервере, установите видимость строки в false, это предотвратит рендеринг строки.

Edit - С Например:

 
function ShowHideRow(row, show) 
{ 
    document.getElementById(row).style.display = (show ? 'block' : 'none'); 
} 

примечание вы можете следовать советование из Муфаса и использовать таблицу-строку вместо блока.

+0

Спасибо Крис. Ценю вашу помощь. –

1

Вам необходимо установить для свойства 'display' строки() значение 'none'. Через JavaScript, как сказал Крис, или с помощью CSS.

+0

Echilon, спасибо за вашу помощь. Я попробовал то, что Крис и Муфаса заявили, и теперь «нет» и «блокировать» все работает. –

0

Крис прав, за исключением того, что значение вернется к правильному типу отображения таблицы будет немного более правильным при его повторном отображении. Для <TR> вы должны использовать display: table-row. См. CSS Display Property.

Обновление: ответ bobince более практичный ответ о том, как использовать (а не использовать) атрибут отображения.

+0

Муфаса, большое спасибо за вашу помощь. –

4

Если вы делаете это с использованием свойства отображения, как было предложено до сих пор, вам нужно беспокоиться о блоке против таблицы-строки. строка таблицы правильная, но IE ее не поддерживает, поэтому вам нужно выбирать браузер.

Потенциально проще, чтобы избежать настройки стиля непосредственно, делая это с помощью правила класса CSS вместо:

tr.hidden { display: none; } 

row.className= 'hidden'; // sets display to none 
row.className= ''; // resets display to its default value 
+0

Спасибо за вашу помощь. Я также попробую этот вариант. –

+0

Хотелось бы отметить, что вы можете попытаться присвоить вашему классу более «семантически значимое» имя, например «отключено», а не «скрыто». Вы можете в любом случае отобразить строку позже и затенять ее серой, а не скрывать ее, и в этом случае имя класса не будет иметь никакого смысла. – Rahul

Смежные вопросы