获取不了GridView中CheckBox的状态
这是我的源码for(inti=0;i<GridView1.Rows.Count;i++){CheckBoxcheckbox=(CheckBox)(GridView1.Ro...
这是我的源码
for (int i = 0; i < GridView1.Rows.Count; i++)
{
CheckBox checkbox = (CheckBox)(GridView1.Rows[i].FindControl("CheckBox"));
bool s = checkbox.Checked;
if (s)
{
string sql = "delete T_logistics_fleet where Fleet_name='" + GridView1.DataKeys[i].Value.ToString() + "'";
db.Operation(sql);
i++;
}
} 展开
for (int i = 0; i < GridView1.Rows.Count; i++)
{
CheckBox checkbox = (CheckBox)(GridView1.Rows[i].FindControl("CheckBox"));
bool s = checkbox.Checked;
if (s)
{
string sql = "delete T_logistics_fleet where Fleet_name='" + GridView1.DataKeys[i].Value.ToString() + "'";
db.Operation(sql);
i++;
}
} 展开
2个回答
展开全部
看下你的Page_Load里的用于初始化的操作是不是包含在!IsPostBack中:
void Page_Load()
{
if(!IsPostBack)
{
//你的操作
}
}
另外GridView不是所有行都是数据行,表头、表尾、分页行要排除在外的,应该这样写:
foreach(DataGridViewRow dgr in GridView1.Rows)
{
if(dgr.RowType==DataControlRowType.DataRow)
{
CheckBox cb=dgr.FindControl("CheckBox") as CheckBox;
if(cb !=null)
{
//你的操作
}
}
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询