Gridview 实现列表全选、自动选择下级item的功能

Gridview 实现列表全选、自动选择下级item的功能

1、  前台关键代码

<asp:TemplateField HeaderText="选择" ItemStyle-HorizontalAlign="Center">

<ItemTemplate>

<asp:CheckBox ID="chkitem" runat="server" Enabled="true" Style="cursor: pointer" AutoPostBack="true" OnCheckedChanged="chkitem_selectchange" />

</ItemTemplate>

<HeaderTemplate>

<asp:CheckBox ID="chkall" runat="server" Text="选择" OnCheckedChanged="chkall_selectchange" AutoPostBack="true"/>

</HeaderTemplate>

</asp:TemplateField>

注意:

AutoPostBack="true" OnCheckedChanged="chkitem_selectchange"

OnCheckedChanged="chkall_selectchange" AutoPostBack="true"

这两行代码分别是实现全选和ITEM单选按钮,如图

实现功能如下:

1、 在列表头点选择实现列表项全选或全不选功能

2、 单独选择一个列表时自动根看成机构ID”实现选择或取消下级机构的选择功能。

 

后台代码:

在Page.cs页面增加“chkitem_selectchange” 和“chkall_selectchange”两个函数

/// <summary>

/// 全选操作

/// </summary>

/// <param name="sender"></param>

/// <param name="e"></param>

protected void chkall_selectchange(object sender, EventArgs e)

{

        isCheckall = true;

 

        foreach (GridViewRow gvr in this.gv.Rows)

        {

            CheckBox cb = (CheckBox)gvr.Cells[0].FindControl("chkitem");

            cb.Checked = ((CheckBox)sender).Checked;

        }

 

        //标志置为初始状态,防止项目里的selectchange事件重复执行

        isCheckall = false;

}

/// <summary>

/// 实现自动勾选下级机构功能

/// </summary>

/// <param name="sender"></param>

/// <param name="e"></param>

protected void chkitem_selectchange(object sender, EventArgs e)

{

        if (!isCheckall)

        {

            CheckBox cb = (CheckBox)sender;

            GridViewRow gvr = (GridViewRow)cb.Parent.Parent;

            string v_code = gvr.Cells[1].Text;

            foreach (GridViewRow row in this.gv.Rows)

            {

                string v_tmp = row.Cells[1].Text;

                if (v_tmp.Length >= v_code.Length && v_tmp.Substring(0, v_code.Length).Equals(v_code))

                {

                    CheckBox rcb = (CheckBox)row.Cells[0].FindControl("chkitem");

                    rcb.Checked = cb.Checked;

                }

            }

        }

}

posted on 2013-10-08 16:17 子阳 阅读( ...) 评论( ...) 编辑 收藏

转载于:https://www.cnblogs.com/hzj3099/p/3357305.html

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值