使非asp表在后面的代码中不可见

时间:2012-02-08 20:11:42

标签: c# webforms html-table code-behind visible

我正在处理别人写过的代码,我现在无法改变太多。

它有一个在html中定义的表,如下所示:

<table id="tblResult">
   some stuff defined in here.
</table>

我想使用后面的代码使这个表及其所有内容不可见,但我注意到我无法直接将表作为tblResult.visible在后面的代码中解决。这对我来说很有意义,因为这不是asp对象。简单地将其更改为asp:table不起作用,因为在该表内部有一些东西我不想搞砸。是否可以解决该表并从后面的代码中将可见性设置为false?

3 个答案:

答案 0 :(得分:3)

将其包装到<asp:PlaceHolder>中,然后切换占位符可见性。

答案 1 :(得分:1)

runat='server'添加到代码中。您可以做的另一件事是将它包装在div,panel等的服务器端标签周围,并将它们设置为visible='false'这样的效果:

<div id='myDiv' runat='server'>
 <table id="tblResult">
   //stuff
 </table>
</div>

然后在您的代码隐藏中:

this.myDiv.Visible=False;

现在可以确保您的表格不可见。你可以再次使用div,面板(实际上只是div),文字,占位符等。

答案 2 :(得分:0)

您可以将其打包在Literal

<asp:Literal runat="server" ID="Literal1" Visible="False">
<table> ... </table>
</asp:Literal>