您的位置:首页 > Web前端 > JavaScript

关于GridView中的CheckBox全选,取消一段JavaScript脚本

2011-05-16 14:11 585 查看
/*
* GridView.js
*
*/
// 对GridVew的ChekBox选中制作全选按钮
function check(checkAllBox, GdView) {
var obj = document.getElementById(checkAllBox); //获取全选控件ID
var gv = document.getElementById(GdView); //获取Gridview控件
if (gv == null)//判断GridView是否有数据
return;
var aa = gv.getElementsByTagName("input"); //获取GridView
if (obj.checked) {
for (var i = 0; i < aa.length; i++) {
if (aa[i].type == 'checkbox')
aa[i].checked = true;
}
}
if (obj.checked == false) {
for (var i = 0; i < aa.length; i++) {
if (aa[i].type == 'checkbox')
aa[i].checked = false;
}
}
}
// 部分取消
// obj表示GirdView中的CheckBox
// obj1表示GridView的id
// obj2表示ChekBox的id
function cacelPart(checkAllBox, GdView, obj) {
var GvCount = 0;
var GVCheckBoxCount = 0;
var gv = document.getElementById(GdView); //获取Gridview控件
var aa = gv.getElementsByTagName("input");
var chckAll = document.getElementById(checkAllBox); //获取全选控件ID
// var obj1 = document.getElementById('<%=' + obj + '.ClientID%>'); //获取Gridview控件
if (obj.checked == false) {
chckAll.checked = false;
}
if (obj.checked == true) {
for (var i = 1; i < aa.length; i++) {
if (aa[i].type == 'checkbox') {
GVCheckBoxCount = GVCheckBoxCount + 1;
if (aa[i].checked == true) {
GvCount = GvCount + 1;
}
}
}
if (GvCount == GVCheckBoxCount) {
chckAll.checked = true;
}
}
}


用法

<asp:GridView ID="gvPackagingCostRequest" runat="server" AutoGenerateColumns="false"

AllowPaging="true" CssClass="t_part" PageSize="20" >

<Columns>

<HeaderTemplate>

<input type="checkbox"
id="chkAll" onclick="check('chkAll','gvPackagingCostRequest');" />

</HeaderTemplate>

<ItemTemplate>

<asp:CheckBox ID="chkApply" runat="server" class="chk" name="chkApply" onclick="cacelPart('chkAll','gvPackagingCostRequest',this)" />

</ItemTemplate>

<ItemStyle HorizontalAlign="Center" Width="8px" />

</asp:TemplateField>

</Columns>

</asp:GridView>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: