我在页面上有一些复选框。按下按钮触发器后,我在UpdatePanel中使用FindControl()得到它们,但是检查的值是错误的。如何获得正确的检查值?
答案 0 :(得分:2)
如果您有任何代码设置页面上复选框的值,请确保它不在回发上执行,如下所示:
protected void Page_Load(object sender, EventArgs e) {
// Only set the checkboxes on GETs, not on POSTs
if (! this.IsPostBack) {
this.EmailMeUpdatesCheckbox.Value = false;
}
}
UpdatePanels
内触发的操作仍然会经历页面生命周期(这就是您可以访问所有Page
状态的原因),因此可能会在获取代码之前清除用户的选择在其中检查复选框值。