从后面的代码调用HTML表

时间:2010-04-05 13:09:28

标签: c#-3.0 asp.net-3.5

我正在尝试从后面的代码访问HTML表,并设置其visible =“false”属性(取决于用户选择的值)。该表具有id值和runat = server属性。

如何从C#2008中的代码中调用该表并设置其显示?

5 个答案:

答案 0 :(得分:6)

确保将表设置为在服务器上运行。

实施例

<table id="tblMyTable" runat="server">
....
</table>

在服务器端,您可以使用变量tblMyTable

来访问它

隐藏可见性并不简单。它没有属性,因为它是一个Html控件而不是服务器控件。

我会将表包装在ASP.NET控件(如面板)中,并隐藏面板。

答案 1 :(得分:3)

我会将表格包装在<asp:Panel控件中,然后改变它的可见属性。

答案 2 :(得分:1)

从代码隐藏设置可见性很简单,因为设置Visible属性:

table_control.Visible = false;

如果你这样做是为了回应一些客户端活动,那么你需要一些javascript:

document.getElementById("<%= table_control,ClientID %>").style.display = "none";

或jQuery:

$("#<%= table_control,ClientID %>").hide();

根据页面的需要,从onclick或onchange事件中调用此方法。

答案 3 :(得分:0)

你应该使用&lt; asp:Table&gt;控制是否要从背后的代码访问表格,例如

<asp:Table ID="Table1" CssClass="data" runat="server" CellSpacing="0">
    <asp:TableHeaderRow>
        <asp:TableHeaderCell>SKU</asp:TableHeaderCell>
        <asp:TableHeaderCell>Description</asp:TableHeaderCell>
        <asp:TableHeaderCell>Quantity</asp:TableHeaderCell>
        <asp:TableHeaderCell>Amount</asp:TableHeaderCell> 
    </asp:TableHeaderRow>
</asp:Table>

将数据绑定到表中,例如。像这样:

var row = new TableRow();

row.AddCell(stock.Sku);
row.AddCell(stock.Description);
row.AddCellTextbox("txtQty", cart.Values[key]);
row.AddCell(stock.Price.ToString());

Table1.Rows.Add(row);

注意:表格控件不为代码中添加的项目提供视图状态,因为您需要使用GridView或类似控件。

答案 4 :(得分:0)

为了设置Table的可见性,您需要设置Runat =&#34; server&#34;属性到你的表

设计视图: ....

背后的代码(C#) tbl_test.Visible = FALSE;

试试这个有效......;)