在代码中更改HTML表

时间:2016-01-13 15:57:22

标签: c# asp.net html-table code-behind

我有一张特定布局的表格。它是这样开始的:

<table>
    <tr bgcolor="#007ACC" style="color:White">
        <td width="145"><asp:Label Text="" ID="lblLevel" runat="server" /></td><td width="80"></td><td width="30"></td><td width="145"><asp:Label Text="" ID="lblGroupNumber" runat="server" /></td><td width="60"></td><td width="10">Active</td>
    </tr>
    <tr>
        <td colspan="5"> 
            <asp:TextBox ID="txtName" runat="server" width="460px"></asp:TextBox>
        </td>
        <td> 
            <asp:DropDownList ID="cboActive" runat="server" Width="50px">
                <asp:ListItem>Y</asp:ListItem>
                <asp:ListItem>N</asp:ListItem>
            </asp:DropDownList>
        </td>
    </tr>

问题是,在某些情况下,我需要它看起来像这样:

<table>
    <tr bgcolor="#007ACC" style="color:White">
        <td width="145"><asp:Label Text="" ID="lblLevel" runat="server" /></td><td width="80"></td><td width="30"></td><td width="145"><asp:Label Text="" ID="lblGroupNumber" runat="server" /></td><td width="60"></td><td width="10">Active</td>
    </tr>
    <tr>
        <td colspan="2">
            <asp:TextBox ID="txtName" runat="server" width="460px"></asp:TextBox>
        </td>
        <td></td>
        <td colspan="2"> 
            <asp:TextBox ID="txtNumber" runat="server" width="460px"></asp:TextBox>
        </td>
        <td> 
            <asp:DropDownList ID="cboActive" runat="server" Width="50px">
                <asp:ListItem>Y</asp:ListItem>
                <asp:ListItem>N</asp:ListItem>
            </asp:DropDownList>
        </td>
    </tr>

之前我隐藏了文本框,这没问题。但我能想到的唯一方法是使用代码隐藏td's。我见过这个:

How to hide columns in HTML table?

但他们从不解释如何确定隐藏哪个td

那么,这可以在代码中完成(最好是C#中的代码隐藏)吗?如果是这样,怎么样?

3 个答案:

答案 0 :(得分:2)

在asp.net中,大多数元素都可以通过runat set:

以编程方式处理为服务器控件
<td colspan="2" runat="server" id="tdToHide"> 
      <asp:TextBox ID="txtNumber" runat="server" width="460px"></asp:TextBox>
</td>

在C#中:

tdToHide.Visible = false;

这是隐藏事物的众多方法之一。在网页上。

另一个是td上的条件CSS类。然后,页面上的样式将显示其显示。

答案 1 :(得分:0)

您可以使用LiteralControl,然后根据条件将内容或AddControl更改为literalcontrol。这可以从后面的代码执行

答案 2 :(得分:0)

选择特定HTML标签的其他方法可以通过css选择器完成。 http://www.w3schools.com/cssref/css_selectors.asp 看看等:p:nth-​​child(2)