0

关闭行的可见性并消除间隙的最佳方法是什么。反之亦然,如果打开可见性确保可见行再次显示。

4

4 回答 4

4

如果您希望在客户端上执行此操作(即通过 javascript),请尝试将 style.display 设置为“none”(并设置“block”以重新打开它)。

如果您希望在服务器上处理它,请将行的可见性设置为 false,这将阻止该行呈现。

编辑 - 举例:

函数 ShowHideRow(行,显示)
{
    document.getElementById(row).style.display = (show ? 'block' : 'none');
}

请注意,您可能希望遵循 Mufasa 的建议并使用 table-row 而不是 block。

于 2009-03-20T13:58:40.150 回答
4

如果您按照目前的建议使用显示属性来执行此操作,则必须担心块与表格行。table-row 是正确的,但 IE 不支持,所以你必须浏览器嗅探才能选择。

可能更容易避免直接设置样式,而是使用 CSS 类规则:

tr.hidden { display: none; }

row.className= 'hidden'; // sets display to none
row.className= ''; // resets display to its default value
于 2009-03-20T14:38:26.310 回答
1

您需要将行 (the) 的“显示”属性设置为“无”。通过 Chris 所说的 JavaScript 或 CSS。

于 2009-03-20T14:00:20.847 回答
0

Chris 是对的,只是将值设置回正确的表格显示类型会在再次显示时更正确一些。对于 a <TR>,您将使用display: table-row. 请参阅CSS 显示属性

更新:bobince 的响应是关于如何使用(而不是使用)显示属性的更实际的响应。

于 2009-03-20T14:00:59.207 回答