日期:2014-05-19  浏览次数:20393 次

急.DataList无法获取CHECKBOX值问题
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());
}
这段代码。但有的页面就可能执行。有的就不行。弄半天了。急。希望各位帮下忙

------解决方案--------------------
是不是你的页面有js错误呢
------解决方案--------------------
........
告诉你一个最简单的方法
用模版列
模版里面放这个

<input name= "choose " type= "checkbox " value= '这里绑定ID ' />


如果要判断哪个选中

直接Request.Params[ "choose "] 这样,所有选中的checkbox 对应的value会以逗号分逗得到,然后再处理,这比你这种代码简单太多了
------解决方案--------------------
代码没什么问题。感觉是不是没找到CheckBox1这个控件。楼主把报错信息贴上来看看。