首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >带有runat=server的MasterPage标记

带有runat=server的MasterPage标记
EN

Stack Overflow用户
提问于 2012-07-31 15:49:00
回答 2查看 343关注 0票数 0

Masterpage.cs不识别带有runat=server的html标记

例如,在Masterpage中:

代码语言:javascript
复制
 <input type="checkbox" runat="server" id="ckb" />

给出使用ckb时代码隐藏中的折叠错误。

名称“ckb”在当前上下文中不存在

更新输入在中继器的<HeaderTemplate>内部

我怎么才能找到他并改变他的属性?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-07-31 16:00:20

如果您在基于Template的控件(如<asp:Repeater>)中使用控件,那么您将无法像直接放置在页面/用户控件/母版页上的控件那样直接访问这些控件。

相反,您需要在模板控件本身上使用FindControl

例如,如果您设置了一个ItemDataBind事件处理程序,您将能够按以下方式执行.

代码语言:javascript
复制
protected void repeater_ItemDataBound(object sender, RepeaterItemEventArgs e)
{
  if(e.Item.ItemType == ListItemType.Header)
  {
    HtmlInputCheckBox chk = (HtmlInputCheckBox)e.Item.FindControl("chk");
  }
}
票数 1
EN

Stack Overflow用户

发布于 2012-07-31 15:54:15

您给出的控件idckb,而不是checkAll

ckb将在后面的代码中被识别。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11744055

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档