1

所以我有一些由服务器创建的复选框。其中一些被检查,而另一些则没有。

我可以选中和取消选中(用鼠标)创建的所有我想要的未选中的复选框,但如果它是选中的,我不能单击它来取消选中它。

生成文本框的代码:

System.Web.UI.WebControls.CheckBox chk = new System.Web.UI.WebControls.CheckBox();
chk.ID = colName; 
chk.AutoPostBack = false;
if (val != null && val != "")
{
    chk.Checked = true;
}
ChecklistPanel.Controls.Add(chk);

不过,这无关紧要,因为即使我在 .aspx 文件中添加了控件并设置了 checked="true",它们的行为仍然相同。

如果有帮助,以下是 c# 决定呈现控件的方式:

<div id="uniform-MainContent_EmpMain_dv_access_to" class="checker">
    <span class="checked">
        <input id="MainContent_EmpMain_dv_access_to" class="checked" 
            type="checkbox" checked="checked" name="ctl00$ctl00$MainContent$EmpMain$dv_access_to" style="opacity: 0;">
    </span>
</div>
4

3 回答 3

0

我认为唯一的问题可能是您的复选框的 ID。
您创建的每个复选框都应该有唯一的 id。
您不能有多个具有相同 ID 的控件。

于 2013-03-08T17:51:41.263 回答
0

去掉 style="opacity: 0; 再试试。

于 2013-03-08T18:13:19.990 回答
0

好吧,我猜有一些我不知道的隐藏的javascript,并且修复了它。

于 2013-03-08T22:58:38.907 回答