VerySource

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 1648|回复: 14

gridview全选问题

[复制链接]

2

主题

10

帖子

11.00

积分

新手上路

Rank: 1

积分
11.00
发表于 2020-2-23 17:30:02 | 显示全部楼层 |阅读模式
用checkbox做了一个gridview的全选框,可是只要一分页或排序所选中的记录就消失了,不知道如何解决该问题
回复

使用道具 举报

0

主题

29

帖子

23.00

积分

新手上路

Rank: 1

积分
23.00
发表于 2020-5-6 13:15:01 | 显示全部楼层
session保存
回复

使用道具 举报

2

主题

10

帖子

11.00

积分

新手上路

Rank: 1

积分
11.00
 楼主| 发表于 2020-5-8 11:15:01 | 显示全部楼层
就么有其他办法吗?
回复

使用道具 举报

0

主题

1

帖子

2.00

积分

新手上路

Rank: 1

积分
2.00
发表于 2020-5-8 16:00:01 | 显示全部楼层
保存状态的话是得用Session
回复

使用道具 举报

0

主题

5

帖子

4.00

积分

新手上路

Rank: 1

积分
4.00
发表于 2020-5-8 20:45:01 | 显示全部楼层
你全选是怎么写的
1.要保持的话 必须注册CheckBox
CheckBox check = ((CheckBox)gvlDestination.theGridViewList.Rows[i].Cells[0].FindControl("check"));
                    check.Checked = true;
                    if (check != null)
                    {
                        checkstr += string.Format(";document.all['{0}'].checked=true", check.ClientID);
                    }
                }
                                JS.ExecuteBlock(this, checkstr);
回复

使用道具 举报

0

主题

5

帖子

4.00

积分

新手上路

Rank: 1

积分
4.00
发表于 2020-5-8 21:30:01 | 显示全部楼层
转页用ViewState 吧
回复

使用道具 举报

2

主题

10

帖子

11.00

积分

新手上路

Rank: 1

积分
11.00
 楼主| 发表于 2020-5-10 12:15:01 | 显示全部楼层
<script runat="server">
protected void CheckAll(object sender, EventArgs e)
  {
    CheckBox cbx = (CheckBox)sender;
    foreach (GridViewRow gvr in gvComUnion.Rows)
    {
      CheckBox ch = (CheckBox)gvr.FindControl("ItemCheckBox");
      ch.Checked = cbx.Checked;
    }
  }
</script>
我是这么写的
回复

使用道具 举报

0

主题

5

帖子

4.00

积分

新手上路

Rank: 1

积分
4.00
发表于 2020-5-11 09:00:02 | 显示全部楼层
这样写应该是有些问题
回复

使用道具 举报

0

主题

5

帖子

4.00

积分

新手上路

Rank: 1

积分
4.00
发表于 2020-5-11 19:00:02 | 显示全部楼层
试试这个   

CheckBox cbx = (CheckBox)sender;
    string checkstr;
    foreach (GridViewRow gvr in gvComUnion.Rows)
    {
        CheckBox ch = (CheckBox)gvr.FindControl("ItemCheckBox");
          //ch.Checked = cbx.Checked;
          if (ch != null)
        {
            checkstr += string.Format(";document.all['{0}'].checked=true", ch.ClientID);
        }
    }
    Page.RegisterStartupScript("key1", string.Format("<script>{0}</script>",checkstr));
回复

使用道具 举报

2

主题

10

帖子

11.00

积分

新手上路

Rank: 1

积分
11.00
 楼主| 发表于 2020-5-12 06:15:01 | 显示全部楼层
protected void CheckAll(object sender, EventArgs e)
  {
      CheckBox cbx = (CheckBox)sender;
      string checkstr;
      foreach (GridViewRow gvr in gvComUnion.Rows)
      {
          CheckBox ch = (CheckBox)gvr.FindControl("ItemCheckBox");
          //ch.Checked = cbx.Checked;
          if (ch != null)
          {
              checkstr += string.Format(";document.all['{0}'].checked=true", ch.ClientID);
          }
      }   
      Page.RegisterStartupScript("key1", string.Format("<script>{0}</script>", checkstr));
}
是这样吗?不行啊
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|CopyRight © 2008-2023|verysource.com ( 京ICP备17048824号-1 )

快速回复 返回顶部 返回列表