gridview和checkbox的问题,在多选的情况下还是只执行一次。。。

gridview是绑定数据库的2张表的一些字段动态生成的,里面加入了checkbox,然后我想通过对checkbox的值checked是否为true来执行一些操作,其实就... gridview是绑定数据库的2张表的一些字段动态生成的,里面加入了checkbox,然后我想通过对checkbox的值checked是否为true来执行一些操作,其实就是如果为ture,我就获取girdview的第一个字段的值,然后在数据库一个表里面update一个字段的数据,因为我update的字段会影响到我gridview显示的内容(效果就是勾选了什么,点击按钮后就会在Gridview上面相应的少那一行),所以要重新绑定一次girdview。接下来说下我的问题,就是我单选一个checkbox时,是可以正确执行的,然后在gridview上,我选择的那一行也会消失掉,但是当我多选几个checkbox后,就不行了,虽然可以执行,但是界面显示只会少一行,而不是少了我多选的那几行。。求解决。。。。代码如下:
public partial class Buyruku : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{

DataTable dt = new DataTable();
dt = new rukuDAO().dingdan();
if (!IsPostBack)
{

GridView1.DataSource = dt;
GridView1.DataBind();

}

}
protected void Button1_Click(object sender, EventArgs e)
{
string BuyId;
for (int i = 0; i <= GridView1.Rows.Count-1; i++)
{

CheckBox cb = (CheckBox)GridView1.Rows[i].FindControl("CheckBox1");
if ( cb.Checked == true )
{

BuyId = this.GridView1.Rows[i].Cells[1].Text;
Modelruku rk = new Modelruku(BuyId);
new rukuDAO().ruku(rk);

DataTable dt2 = new DataTable();
dt2 = new rukuDAO().dingdan();
GridView1.DataSource = dt2; //其实我知道是这里数据重新绑定的问题。。。但是我想了半天也知道放在哪里好
GridView1.DataBind();
}

}

}
展开
 我来答
tjrizhu
2011-11-21 · TA获得超过301个赞
知道答主
回答量:255
采纳率:0%
帮助的人:153万
展开全部
改为:
string BuyId;
for (int i = 0; i <= GridView1.Rows.Count-1; i++)
{
if ( cb.Checked == true )
{
BuyId+=this.GridView1.Rows[i].Cells[1].Text+“,”;
}

Modelruku rk = new Modelruku(BuyId.Trim(','));
new rukuDAO().ruku(rk);

DataTable dt2 = new DataTable();
dt2 = new rukuDAO().dingdan();
GridView1.DataSource = dt2; //其实我知道是这里数据重新绑定的问题。。。但是我想了半天也知道放在哪里好
GridView1.DataBind();
---------------------------------------------------
for循环里边的if 只保存用来做为条件的id 把所有条件都保存完 跳出循环 然后执行update 一次性把所有选中的全部update就行了 试试效果吧
网易云信
2023-12-06 广告
UIkit是一套轻量级、模块化且易于使用的开源UI组件库,由YOOtheme团队开发。它提供了丰富的界面元素,包括按钮、表单、表格、对话框、滑块、下拉菜单、选项卡等等,适用于各种类型的网站和应用程序。UIkit还支持响应式设计,可以根据不同... 点击进入详情页
本回答由网易云信提供
憨厚且成功灬虎鲸9036
2011-11-21
知道答主
回答量:34
采纳率:0%
帮助的人:17万
展开全部
new rukuDAO().ruku(rk);方法之后,再绑定,数据行数都不对了,这个循环怎么继续下去啊,循环操作完之后再重新绑定列表
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式