为什么复选框没有维护它';s值

本文关键字:复选框 维护 为什么 | 更新日期: 2023-09-27 18:26:43

我遇到了一个有趣的问题。

我在网格视图中有一个复选框(它在MODAL中)。在CLosingModal事件时,我正在获取复选框,但它显示FALSE,即使我选中True。

为什么?

<asp:TemplateField HeaderText="Conveyed ?">
  <ItemTemplate>
      <asp:CheckBox ID="chkBoxIsConveyed" runat="server" Checked='<%# Convert.ToBoolean(Eval("IsConveyed")) %>' />
         </ItemTemplate>
</asp:TemplateField>

.cs

protected void btnCloseModal_Click(object sender, EventArgs e)
    {
        mdlLastHearingDates.Hide();
        UpdateIsConveyed();
    }
public void UpdateIsConveyed() 
    {
        foreach (GridViewRow r in grdViewLastHearingDates.Rows)
        {
            int CaseHearingID = Convert.ToInt32(r.Cells[0].Text);
            CheckBox chkBox = r.FindControl("chkBoxIsConveyed") as CheckBox;
            MngCaseHearings.UpdateCasesIsConveyed(CaseHearingID, chkBox.Checked);
        }
    }

我进行了调试,它调用了函数。

为什么复选框没有维护它';s值

尝试将AutoPostBack值设置为true,我相信当您选中复选框时,它不会触发更新模型的事件。有关更多信息,请参阅https://msdn.microsoft.com/en-us/library/system.web.ui.webcontrols.checkbox.autopostback(v=vs.110).aspx