GridView中的CheckBox选中 (JQuery)

GridView中的CheckBox选中 (JQuery)

作者:Dannier | 出处:博客园 | 2012/4/19 10:55:32 | 阅读 73
-

JQuery验证GridView中是否有CheckBox被选中

    在GirdView中使用CheckBox,通常我们使用后台代码的方式判断是否至少有一个CheckBox是选中的状态。但是,这种验证在客户端的脚本中将更加容易实现,而且,页面的效果也非常好。网上有很多解决方案,以下提供我的解决方案,部分代码来源网上,经过我的修改和测试,很好用。“拿来主义”,忘了代码是在哪找到的,希望原作者谅解。

这是主要的实现代码:

<script type="text/javascript" language="javascript" src="http://archive.cnblogs.com/a/Scripts/jquery-1.4.1.min.js" rel="nofollow"/>
$(document).ready(function () {
var gridView1Control = document.getElementById('<%= GridView1.ClientID %>');
var DataKeyName = " ";
//Get all of the checked item in the GridView
$('#<%= cmdGetData.ClientID %>').click(function (e) {
//alert($('input:checkbox[id*=chkSelect]:checked').size());
var DataKeyName = "";
$('input:checkbox[id*=chkSelect]:checked', gridView1Control).each(function (item, index) {
if (DataKeyName == "") {
DataKeyName = $(this).next('input:hidden[id*=IDVal]').val();
}
else {
DataKeyName += "," + $(this).next('input:hidden[id*=IDVal]').val();
}
});
if ( DataKeyName == "" || DataKeyName ==","){
alert("No items are checked!");
}
else{
alert(DataKeyName);
}
return false;
});
});
</script>
html
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title>Gridview CheckBox</title>
<script type="text/javascript" language="javascript" src="http://archive.cnblogs.com/a/Scripts/jquery-1.4.1.min.js" rel="nofollow"/>
$(document).ready(function () {
var gridView1Control = document.getElementById('<%= GridView1.ClientID %>');
var DataKeyName = " ";
//Get all of the checked item in the GridView
$('#<%= cmdGetData.ClientID %>').click(function (e) {
//alert($('input:checkbox[id*=chkSelect]:checked').size());
var DataKeyName = "";
$('input:checkbox[id*=chkSelect]:checked', gridView1Control).each(function (item, index) {
if (DataKeyName == "") {
DataKeyName = $(this).next('input:hidden[id*=IDVal]').val();
}
else {
DataKeyName += "," + $(this).next('input:hidden[id*=IDVal]').val();
}
});
if ( DataKeyName == "" || DataKeyName ==","){
alert("No items are checked!");
}
else{
alert(DataKeyName);
}
return false;
});
});
</script>
</head>
<body>
<form id="form1" runat="server">
<div style=" text-align:center;">
<h1>Gridview using CheckBox</h1>
<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="false" DataKeyNames="ID" HorizontalAlign="Center" >
<Columns>
<asp:TemplateField>
<ItemTemplate>
<asp:CheckBox ID="chkSelect" runat="server" />
<asp:HiddenField ID="IDVal" runat="server" Value='<%# Eval("ID") %>' />
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField>
<HeaderTemplate>
Name
</HeaderTemplate>
<ItemTemplate>
<asp:Label ID="Label1" runat="server" Text='<%# Eval("Name") %>'></asp:Label>
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
<asp:Button ID="cmdGetData" runat="server" Text="Get Data" />
</div>
</form>
</body>
</html>
vb.net
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
Dim dt As New DataTable()
dt.Columns.Add("ID")
dt.Columns.Add("Name")
Dim oItem As DataRow
oItem = dt.NewRow()
oItem.Item("ID") = "1"
oItem.Item("Name") = "Shawpnendu Bikash Maloroy"
dt.Rows.Add(oItem)
oItem = dt.NewRow()
oItem.Item("ID") = "2"
oItem.Item("Name") = "Bimalendu Bikash Maloroy"
dt.Rows.Add(oItem)
oItem = dt.NewRow()
oItem.Item("ID") = "3"
oItem.Item("Name") = "Purnendu Bikash Maloroy"
dt.Rows.Add(oItem)
GridView1.DataSource = dt
GridView1.DataBind()
End Sub

希望本篇文章对你有用

Happy Programming!!!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值