禁用ASP.NEt验证程序,使其在回发时禁用

时间:2009-10-29 21:47:26

标签: asp.net javascript jquery

我正在尝试禁用ASP.Net Validator,以便在回发时禁用它。

我正在使用

在客户端禁用验证器
$('.c_MyValidator').each(function() {
     ValidatorEnable(document.getElementById($(this).attr('id')), false);
});

但是当页面回发时,我的页面仍然无效。 我在UserControl(.ascx)中,所以我没有覆盖Validate()。

如何在页面回发时禁用验证器,使其enabled = false。

有什么想法吗?

1 个答案:

答案 0 :(得分:2)

您的方案here有一个示例。基本上在服务器端代码中,将验证器的enabled属性设置为复选框的checked属性(以及调用客户端ValidatorEnable)。使用用户控件的Page_Load事件,因为没有Validate方法。

public partial class CheckboxAndValidator : System.Web.UI.UserControl
{
    protected void Page_Load(object sender, EventArgs e)
    {
        validator.Enabled = cbControlValidation.Checked;
    }
}

您不能做的是在Page_Load事件中验证您的页面。这太早了,一旦用户控件完成它,就需要在页面生命周期的后期完成。