if (!Page.IsPostBack) 
{
BindDataList();

}绑定。当选中其中一个CHECKBOX后。 foreach(DataListItem myitem in this.Datalist1.Items)
{
CheckBox chk = (CheckBox)myitem.FindControl("CheckBox1"); if(chk.Checked )
{
Response.Write(this.Datalist1.DataKeys[myitem.ItemIndex].ToString());
}
else
{
Response.Write("没获取");
}
}
老是不能执行
if(chk.Checked )
{
Response.Write(this.Datalist1.DataKeys[myitem.ItemIndex].ToString());
}
这段代码。但有的页面就可能执行。有的就不行。弄半天了。急。希望各位帮下忙

解决方案 »

  1.   

    CheckBox chk = (CheckBox)myitem.FindControl("CheckBox1");这里确认找到控件了吗?有错误,错误讯息是什么
      

  2.   

    ........
    告诉你一个最简单的方法
    用模版列
    模版里面放这个<input name="choose" type="checkbox" value='这里绑定ID' />
    如果要判断哪个选中直接Request.Params["choose"] 这样,所有选中的checkbox 对应的value会以逗号分逗得到,然后再处理,这比你这种代码简单太多了
      

  3.   

    但就是
    不执行chk.Checked这里。
      

  4.   

    代码没什么问题。感觉是不是没找到CheckBox1这个控件。楼主把报错信息贴上来看看。