因此,我在checkbox1
中动态添加了modal bootstrap
,并且有一个CheckedChanged
事件也动态添加了某些复选框的("checkbox1.1" "checkbox1.2" "checkbox1.3")
,所以我的问题是,当我postback
(在“提交”或链接按钮上)时,如何知道我的checkbox1.1
是否已选中?我实际上可以知道是否检查了我的checkbox1
,因为我在每个postback
上都重新创建了控件,但是我无法checkbox1.1
来创建控件,因为它总是取决于是否检查了我的checkbox1
或不。是否可以在不重新创建checkbox1.1
中的postback
的情况下获得它? (如果可能,请勿使用javascript
。
我已经尝试过,列表,字典,会话,Viewstates就像我不重新创建控件(checkbox1.1)一样无法保存它们,它们将会丢失
foreach (DataRow item in dt.Rows)
{
i++;
CheckBox chk = new CheckBox();
chk.Attributes["class"] = "mycheckbox";
chk.Font.Name = "Tahoma";
chk.Attributes.Add("runat", "server");
chk.Text = item[descricao].ToString();
//If true add checkbox id = checkbox1
if (divsname.ID == "DadosIdentificacao")
{
chk.ID = checkbox + i;
chk.AutoPostBack = true;
chk.CheckedChanged += new EventHandler(this.chkEventos);
}
//Else checkboxid = checkbox1.1
else
{
chk.ID = checkbox + item[descricao].ToString() + i;
}
divsname.Controls.Add(chk);
ListData.Add(chk);
}
我可以知道是否选中checkbox1
,但是我的checkbox1.1
控件在postback
上消失了。
答案 0 :(得分:0)
解决了,而不是动态创建我的复选框,而是用我所有的复选框填充 Session [“ list”] ,然后创建一个新的list List List1 = Session [“ list”]作为List ,并通过隐藏或显示我的复选框来使用相同的List1。