点击服务器按钮里代码如下:我想点击另一个按钮保存checkbox选中值
DataTable dt = CMP.getCPDlfl(this.DropDownList1.SelectedValue);
for (int i = 0; i < dt.Rows.Count; i++)
{
CheckBox ck = new CheckBox();
ck.ID = dt.Rows[i]["xf_flbh"].ToString();
ck.Text = dt.Rows[i]["xf_flmc"].ToString() ;
this.rou.Controls.Add(ck);
}
DataTable dt = CMP.getCPDlfl(this.DropDownList1.SelectedValue);
for (int i = 0; i < dt.Rows.Count; i++)
{
CheckBox ck = new CheckBox();
ck.ID = dt.Rows[i]["xf_flbh"].ToString();
ck.Text = dt.Rows[i]["xf_flmc"].ToString() ;
this.rou.Controls.Add(ck);
}
选中这个自动生成的checkbox,点击另一个按钮就是取不到选中的值,而且checkbox也不见了,谢谢了,有没有好的方法取到它的值
这样比较复杂而且页面性能很差(如果用ViewStates保存的话),所以建议不要这样做,生成时可以用脚本绘制Html的checkbox,取值是用js拿到后传给后台,不要做PostBack提交
如:
<input id='iptCheck_<%#Eval("MainID") %>' type="checkbox" name='ckitem' value='<%#Eval("PublicName") %>'/>$("input[type=checkbox][name=ckitem]").each(function () {
if($(this).attr("checked")==true){
var id=$(this).attr("id").split('_')[1];//这个是ID;
var values=$(this).val();//这个是Value值
//接下来你把ID和values 组成字符串 赋给 你的那个隐藏域 就行 再在后台获取隐藏域的值
}
});