2016-01-13 3 views
0

У меня есть таблица с определенным макетом. Она начинается так:Изменить таблицу HTML в коде

<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#)? Если да, то как?

ответ

2

В asp.net большинство элементов может быть программно обрабатываются как серверные элементы управления с runat комплекте:

<td colspan="2" runat="server" id="tdToHide"> 
     <asp:TextBox ID="txtNumber" runat="server" width="460px"></asp:TextBox> 
</td> 

В C#:

tdToHide.Visible = false; 

Это один из многих, многих подходов к «скрыть вещи 'на веб-странице.

Другим вариантом будет условный класс CSS на td. Отображение которых затем будет обрабатываться стилями на странице.

+0

F'n блестящий, brotha! Благодаря тонну! –

+0

Без проблем –

0

Вы можете использовать LiteralControl, а затем на основании условия изменить содержимое или AddControl на literalcontrol. Это может быть выполнено из кода позади

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