有什么办法可以在后面的 ASP.net 代码中访问 html 控件。
一些类似于 Findcontrol() 的控件来访问 html 控件。我在用
HtmlSelect htsel1;
htsel1 = (HtmlSelect)FindControl("stage_txt1");
但 htsel1 返回 null。
您需要添加runat=server
和一个ID
.
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
代替div
或TextBox
代替HtmlInputText
或DropDownList
代替HtmlSelect
等等。
如果页面是NamingContainer
(它们没有嵌套在子控件中Repeater
),您也可以直接访问它们而无需使用FindControl
.
HtmlSelect myDdl = this.stage_txt1;
您需要runat="server"属性。例如:
<div id="myServerSideDiv" runat="server"></div>
只需给 html 元素一个 runat="server" 和 id 属性,就可以从后面的代码访问该控件