gridView中的checkBox没有更新我的表
本文关键字:更新 我的 中的 checkBox gridView | 更新日期: 2023-09-27 17:50:31
我使用下面的代码在点击复选框时填充表格,但表格
没有变化protected void Button1_Click(object sender, EventArgs e)
{
con.Open();
for (int i = 0; i < GridView1.Rows.Count; i++)
{
CheckBox chkUpdate = (CheckBox)
GridView1.Rows[i].Cells[0].FindControl("chkSelect");
if (chkUpdate != null)
{
if (chkUpdate.Checked)
{
string strID = GridView1.Rows[i].Cells[1].Text;
SqlCommand cmd;
string str1 = "update app1 set p_id=0 where p_id='" + strID + "'";
cmd = new SqlCommand(str1, con);
cmd .ExecuteNonQuery ();
}
}
}
}
试试这段代码,它可以工作
foreach (GridViewRows gdrv in GridView1.Rows)
{
CheckBox chkUpdate = (CheckBox)
gdrv.FindControl("chkSelect");
if (chkUpdate != null)
{
if (chkUpdate.Checked)
{
string strID = gdrv.Cells[1].Text;
SqlCommand cmd;
string str1 = "update app1 set p_id=0 where p_id='" + strID + "'";
cmd = new SqlCommand(str1, con);
con.open();
cmd .ExecuteNonQuery ();
con.close();
}
}
}
我猜你真的没有在cmd .ExecuteNonQuery ();
调试时,你能进入if(chkUpdate.Checked)
块吗?
我认为查询中唯一的问题是"Where"条件…如果p_id是Int类型,那么你不必使用"…"
所以语句必须是:
string str1 = "update app1 set p_id=0 where p_id=" + strID;