UpdatePanel + Validators工作!在验证后一段时间内停止异步请求



这不是关于验证器和更新面板兼容性的老问题。

下面是我的场景:

我有一个aspx页面与脚本管理器。这个页面有一个带有我的功能的ascx用户控件。在这个控件中,我有一些面板和区域,根据访问者通过点击一些控制此行为的单选按钮来选择启用/禁用或可见/隐藏。在此之前一切都很好。Validators和UpdatePanel并不是相互对抗的,但是,如果我尝试在不填写表单的情况下提交页面,我的摘要上会得到一条验证消息,验证本身就很好。这里的问题是,单选按钮,这是负责设置可见性的某些区域停止工作,但它开始工作后,第二次或第三次点击。这不是延迟或其他什么…似乎处理程序没有绑定到控件,然后我再次单击,它清理摘要和所有错误通知并再次开始工作。我不知道它是否增加了问题,但用户控件和页面都有远程控制,如按需加载的组合框,工具提示和加载面板。

我已经搜索了很多关于它,所有我能找到的是关于验证控件不工作在updatepanel或updatepanel不与验证器工作的问题。在这种情况下,它实际上是有效的,我只有在验证已经执行和页面之后出现问题。Isvalid被设置为false。

对我来说,这听起来像是在ajax发送的第一个请求中存在服务器错误。所以我的建议是:

在Firefox中打开网页,然后打开Firebog并选择"网络"选项卡。这个选项卡显示了浏览器发送到服务器的每一个请求(包括对脚本,图像,…还有ajax异步请求)。

现在清除firebog中"network"下的列表,并第一次触发ajax,看看是否有任何请求发送到服务器。如果有,你可以看到响应是OK 200响应还是500服务器错误,当然你可以看到错误的完整细节。

最新更新