提问人:Kalpesh 提问时间:11/3/2017 更新时间:11/3/2017 访问量:312
使用 c 访问动态创建的 htmlgenericcontrols,如 div、label 和 checkbox#
Access dynamically created htmlgenericcontrols like div,label and checkbox using c#
问:
我使用带有runat=“server”的htmlgenericcontrol创建了一些div,label和复选框。这些动态创建的 div 被添加到在设计时创建的主 div 中。 现在,我想在页面加载时使用 c# 访问动态创建的 div 中的复选框。 我使用 C# 创建的动态 div 如下所示 -
<div id='firstdiv'>
<div id='seconddiv'>
<label id='lbl' >
<input type="checkbox" id="chk" value="check" runat="server">
<div id='thirddiv'></div>
</label>
</div></div>
我尝试了以下选项,但没有一个有效 -
HtmlGenericControl chkfirstdiv = HtmlGenericControl)maindiv.FindControl(strchkfirstdiv) 作为 HtmlGenericControl;
HtmlGenericControl chkfirstdiv1 = HtmlGenericControl)FindControl(strchkfirstdiv) 作为 HtmlGenericControl;
LiteralControl literalControl = LiteralControl)maindiv.FindControl(strchkfirstdiv);
任何人都可以帮助访问动态 div 中的动态复选框吗?
答:
对于 WebForms,您应该创建控件,设计器应为您生成控件,并且其属性将在回发时填充,而无需调用 FindControl(..)。<asp:Checkbox Id="MyCheckbox" runat="server" Text="Check" />
Checkbox MyCheckbox
Checked
评论
asp 按钮将根据其名称而不是 ID 进行访问,因此在复选框定义中放置一个 name 属性,例如在单击事件时在后端访问 myCheckBox<asp:Checkbox Id="MyCheckbox" name="myCheckBox" runat="server" Text="Check" />
评论