从后面的代码访问html控件

时间:2013-08-30 14:38:36

标签: c# html asp.net

有没有办法在ASP.net代码中访问html控件。

一些控件类似于Findcontrol()来访问html控件。我正在使用

 HtmlSelect htsel1;

    htsel1 = (HtmlSelect)FindControl("stage_txt1");

但是htsel1返回null。

3 个答案:

答案 0 :(得分:2)

您需要添加runat=serverID

ASPX:

<select id="stage_txt1" runat=server"  >
    <option value="1">stage 1</option>
    <option value="2">stage 2</option>
    <option value="3">stage 3</option> 
    <option value="4">stage 4</option>
</select>

代码隐藏:

HtmlSelect myDdl = (HtmlSelect)FindControl("stage_txt1");

或者只使用Panel而不是divTextBox代替HtmlInputTextDropDownList代替HtmlSelect等服务器控件,依此类推

如果网页是NamingContainer(它们没有嵌套在Repeater之类的子控件中),您也可以直接访问它们而无需使用FindControl

HtmlSelect myDdl = this.stage_txt1;

答案 1 :(得分:1)

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

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

答案 2 :(得分:1)

只需给html元素一个runat =“server”和id属性,然后可以从后面的代码访问该控件