arraylist绑定的数据通过checkbox的选择动态删除记录

gangzi002 2009-11-06 10:45:08
我通过一个动态数组将数据绑定到gridview上,然后在gridview中添加了个checkbox,想通过checkbox选择所要删除的记录,然后动态地删除记录,但就是删不了,不知怎么回事,请各位帮忙看看:
protected void BtnDelete_Click(object sender, EventArgs e)
{
for (int i = 0; i < GrvResearchItem.Rows.Count; i++)
{
CheckBox chk = (CheckBox)GrvResearchItem.Rows[i].Cells[0].FindControl("CheckBox1");

string itemId = GrvResearchItem.Rows[i].Cells[7].Text;
//Response.Write(itemId);
if (chk.Checked)
{
//将选中的记录的状态更改为其相反的状态

ResearchItem r = new ResearchItem();
r.ItemID = Convert.ToInt32(itemId);
if (BizResearchItem.DeleteResearchItem(r))
{
//Response.Write("<script laguage=javascript>alert('删除成功!');window.location.href='ResearchItem.aspx';</script>");
LblMessage.Visible = true;
LblMessage.Text = "删除成功!";
databind();
}
}
else
{
LblMessage.Visible = true;
LblMessage.Text = "请选择课题序号";
}

}
}
...全文
44 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
lerit 2009-11-07
  • 打赏
  • 举报
回复
CheckBox chk = (CheckBox)GrvResearchItem.Rows[i].Cells[0].FindControl("CheckBox1"); 看看是不是获取的是空啊
  • 打赏
  • 举报
回复
设断点跟踪if (BizResearchItem.DeleteResearchItem(r)) 这句,,看是否提示异常!~~
tianzi_zc 2009-11-06
  • 打赏
  • 举报
回复
单纯代码不太好定位,可以排查一下:
1、先看看数据库删除了么?然后GredView能否重新房顶
2、选中行的Id是不是正确获取
3、BizResearchItem.DeleteResearchItem(r))方法是不是写的正确
4、其实您最好用批量删除,就是通过循环吧选中的Id拼字符串 1,2,3,....
然后用sql语句 delete from 表名 where id in (1,2,3...)
总之,最好是能正确调试根程序端点来排查一下了

62,046

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧