再Repeater模板中,如何获取里面的控件 客户端ID ??

问题:
<asp:Repeater ID="rptList" runat="server">
  <ItemTemplate>
  <span οnclick="alert('<%=txtName.ClientID%>');">Click Me !!!</span>
  <input id="txtName" type="text" runat="server" />
  </ItemTemplate>
</asp:Repeater>

上例中 <%=txtName.ClientID%> 不正确!!
 
----------------------------------------------------------------------------------------------------
 
答案:
1:repeater空间绑定数据有两种方式
<%= %> : 可获得.cs文件中的public 字段值,相当于Response.Write() .
<%# %> :后期绑定,在指定 repeater.datasource(数据源) 属性后 ,正确语法:<%# Eval("table 中的列名") %>.
如果LZ 想让该弹窗显示迭代中每一行的 clientID 列值 应该使用第二种绑定方式.
 
 
2:<asp:Repeater ID="rptList" runat="server"> 
  <ItemTemplate>
   
  <span οnclick="alert('<%# Container.ClientID+"_txtName" %>')">click me </span>
  <input id="txtName" type="text" runat="server" /> 

  </ItemTemplate>
</asp:Repeater> 

<%# %> 这个要调用DataBind()方法
或:
<asp:Repeater ID="Repeater1" runat="server">
  <ItemTemplate>
   
  <span οnclick="alert('<%# Container.FindControl("txtName") .ClientID%>')">click me</span>
  <input id="txtName" type="text" runat="server" /> 

  </ItemTemplate>
  </asp:Repeater>
 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值