彩票走势图

怎样通过JavaScript获取Repeater控件中的子控件

转帖|其它|编辑:郝浩|2011-03-15 13:16:14.000|阅读 1532 次

概述:在使用Repeater控件时,我们可能经常要获取Repeater控件中的子控件,在 后台代码中我们可以通过使用FindControl方法来获取Repeater控件中的子控件。但是有时可能需要使用Javascript无刷新地获取 Repeater控件的子控件,以前总是觉得使用了像Repeater这样的服务器数据控件后,很难获取到它里面的子控件,后来点击查看页面的源代码发 现,其实在生成的客户端代码中,仔细观察会发现,它里面的子控件生成的ID是有规律的,这样我们可以使用jQuery获取到每一个控件。

# 慧都年终大促·界面/图表报表/文档/IDE等千款热门软控件火热促销中 >>

  在使用Repeater控件时,我们可能经常要获取Repeater控件中的子控件,在 后台代码中我们可以通过使用FindControl方法来获取Repeater控件中的子控件。但是有时可能需要使用Javascript无刷新地获取 Repeater控件的子控件,以前总是觉得使用了像Repeater这样的服务器数据控件后,很难获取到它里面的子控件,后来点击查看页面的源代码发 现,其实在生成的客户端代码中,仔细观察会发现,它里面的子控件生成的ID是有规律的,这样我们可以使用jQuery获取到每一个控件。

  在前台页面添加一个Repeater控件,里面添加一个CheckBox控件。

<div style="width:300px">
<asp:Repeater ID="rptCardGift" runat="server">
<ItemTemplate>
<asp:CheckBox ID="chkName" runat="server" Width="200px" Text='<%#Eval("Name") %>'/>
<asp:Label ID="lblPoints" runat="server" Text='<%#Eval("Point") %>'></asp:Label>
</ItemTemplate>
</asp:Repeater>
</div>

在对Repeater控件进行绑定后,浏览页面,点击查看源代码,客户端生成的html代码如下: 

<div style="width:300px">
<span style="display:inline-block;width:200px;">
<input id="rptCardGift_chkName_0" type="checkbox" name="rptCardGift$ctl00$chkName" />
<label for="rptCardGift_chkName_0">购物金10元</label>
</span>
<span id="rptCardGift_lblPoints_0">5</span>
<span style="display:inline-block;width:200px;">
<input id="rptCardGift_chkName_1" type="checkbox" name="rptCardGift$ctl01$chkName" />
<label for="rptCardGift_chkName_1">电影门票1张</label>
</span>
<span id="rptCardGift_lblPoints_1">10</span>
<span style="display:inline-block;width:200px;">
<input id="rptCardGift_chkName_2" type="checkbox" name="rptCardGift$ctl02$chkName" />
<label for="rptCardGift_chkName_2">迪斯尼乐园门票1张</label>
</span>
<span id="rptCardGift_lblPoints_2">15</span>
</div>

  从上面可以看出,客户端生成的CheckBox控件的ID为"Repeater控件的ID"+"CheckBox控件的ID"+"序号",可以发现所有的checkbox的id的前面部分是一样的,这样我们在Javascript中就可以根据这个规律来查找控件了。

<script type="text/javascript">
$(function () {
$(":checkbox[id^=rptCardGift_chkName]").click(function () {

});
});
</script>

  然后我们可以利用jQuery的parent(),children(),prev(),next()等方法来获取与它相邻、父、子控件了,当然获得控件了,也就可以取得控件的值了。


标签:

本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处、不得修改原文相关链接,如果存在内容上的异议请邮件反馈至chenjj@pclwef.cn

文章转载自:网络转载

为你推荐

  • 推荐视频
  • 推荐活动
  • 推荐产品
  • 推荐文章
  • 慧都慧问
扫码咨询


添加微信 立即咨询

电话咨询

客服热线
023-68661681

TOP