C# 使用js 实现GridView 的全选 /单选

来源:互联网 发布:windows经典主题 编辑:程序博客网 时间:2024/05/16 17:32

前台页面 js

<script type="text/javascript">
        function selectAll(ctlName, bool) {
            var ctl = document.getElementById(ctlName);//根据控件的在客户端所呈现的ID获取控件
            //alert(ctl);
            var checkbox = ctl.getElementsByTagName('input');//获取该控件内标签为input的控件
            for (var i = 0; i < checkbox.length; i++) {
                if (checkbox[i].type == "checkbox") {
                    checkbox[i].checked = bool;
                }
            }
        }
        function delAll(ctlName, bool) {
            var ctl = document.getElementById(ctlName);//根据控件的在客户端所呈现的ID获取控件
            //alert(ctl);
            var checkbox = ctl.getElementsByTagName('input');//获取该控件内标签为input的控件 
            var m = 0;
            for (var i = 0; i < checkbox.length; i++) {
                if (checkbox[i].type == "checkbox" && bool == false) {
                    checkbox[0].checked = false; 
                }
                if (checkbox[i].type == "checkbox" && checkbox[i].checked == true) {
                    m++; 
                }
            }
            if (m == checkbox.length - 1)
            {
                checkbox[0].checked = true;
            }
        }
    </script>



前台body代码



            <asp:GridView ID="ryxzGridView" runat="server" AutoGenerateColumns="False" DataKeyNames="hao" OnRowDataBound="ryxzGridView_RowDataBound">
                <Columns>
                    <asp:BoundField DataField="动态绑定的字段" HeaderText="部门" />
                    <asp:BoundField DataField="动态绑定的字段" HeaderText="工种" />
                    <asp:BoundField DataField="动态绑定的字段" HeaderText="是否在岗" />
                    <asp:BoundField DataField="动态绑定的字段" HeaderText="工号" />
                    <asp:BoundField DataField="动态绑定的字段" HeaderText="姓名" />
                    <asp:TemplateField HeaderText="选择">
                        <HeaderTemplate>
                            <asp:CheckBox runat="server" ID="cbHead" onclick="javascript:selectAll('ryxzGridView',this.checked);" Text="全选"></asp:CheckBox>
                        </HeaderTemplate>
                        <ItemTemplate>
                            <asp:CheckBox ID="cbItem" runat="server" onclick="javascript:delAll('ryxzGridView',this.checked);" Text="选择" />
                        </ItemTemplate>
                    </asp:TemplateField>
                </Columns>
            </asp:GridView>

0 0
原创粉丝点击