C# 从codebehind访问HTMLControl

C# 从codebehind访问HTMLControl,c#,html,asp.net,C#,Html,Asp.net,是否有任何方法可以访问ASP.net代码隐藏中的html控件 有些控件类似于Findcontrol,用于访问html控件。我正在使用 HtmlSelect htsel1; htsel1 = (HtmlSelect)FindControl("stage_txt1"); 但是htsel1返回null。您需要runat=server属性。例如: <div id="myServerSideDiv" runat="server"></div> 您需要runat=se

是否有任何方法可以访问ASP.net代码隐藏中的html控件

有些控件类似于Findcontrol,用于访问html控件。我正在使用

 HtmlSelect htsel1;

    htsel1 = (HtmlSelect)FindControl("stage_txt1");
但是htsel1返回null。

您需要runat=server属性。例如:

<div id="myServerSideDiv" runat="server"></div>
您需要runat=server属性。例如:

<div id="myServerSideDiv" runat="server"></div>

只要给html元素一个runat=server和id属性,控件就可以从代码隐藏中访问

只要给html元素一个runat=server和id属性,控件就可以从代码隐藏中访问

您需要添加runat=server和id

aspx:

或者只需使用服务器控件,如Panel而不是div,TextBox而不是HtmlInputText,DropDownList而不是HtmlSelect等等

如果页面是NamingContainer,则它们不嵌套在子控件(如Repeater)中,您也可以直接访问它们,而无需使用FindControl

您需要添加runat=server和一个ID

aspx:

或者只需使用服务器控件,如Panel而不是div,TextBox而不是HtmlInputText,DropDownList而不是HtmlSelect等等

如果页面是NamingContainer,则它们不嵌套在子控件(如Repeater)中,您也可以直接访问它们,而无需使用FindControl


在页面加载事件中,我从代码隐藏加载下拉列表,如下所示maindiv.InnerHtml=dyntable;我试图通过点击按钮来访问这个下拉列表,但我无法从代码中获取控件behind@VenkateshKaramala:不要添加文本,希望可以从服务器端访问它。这根本不起作用。如果需要动态添加控件,请使用webdatabound控件(如Repeater),它也可以创建html控件Preferred,或者创建控件实例(如HtmlSelect)并将它们添加到页面的控件集合中。在页面加载事件中,我将从代码隐藏中加载下拉列表,如下所示+++;}maindiv.InnerHtml=dyntable;我试图通过点击按钮来访问这个下拉列表,但我无法从代码中获取控件behind@VenkateshKaramala:不要添加文本,希望可以从服务器端访问它。这根本不起作用。如果需要动态添加控件,请使用webdatabound控件(如Repeater),它也可以创建html控件Preferred,或者创建控件实例(如HtmlSelect),并将它们添加到页面的控件集合中。
HtmlSelect myDdl = (HtmlSelect)FindControl("stage_txt1");
HtmlSelect myDdl = this.stage_txt1;