我的页面上有以下复选框:
<asp:CheckBox ID="rbBuilding" runat="server" AutoPostBack="True" OnCheckedChanged="HandlerPackageOnCheckedChanged" Checked="True" CausesValidation="False" />
<asp:CheckBox ID="rbContent" runat="server" AutoPostBack="True" OnCheckedChanged="HandlerPackageOnCheckedChanged" CausesValidation="False" />
有一个基于单击复选框组合的回发逻辑。除一种情况外,一切正常:
我正在打开额外的 Telerik radwindow,它在自己的验证组中有一些验证。如果我以任何验证错误关闭窗口,那么第一次单击任何复选框都不会执行 postpack。
只有第一次点击不起作用。下次我点击一切正常。我尝试将复选框添加到他们自己的验证组并将大小写验证更改为 true。但行为完全相同。当我将测试 javascript 方法添加到该复选框的 onclick 时,该方法会被触发而不会出现问题。只是没有回发。
我还尝试在窗口关闭时重置窗口验证组的所有验证器,它们被重置,但行为未检查,第一次单击不起作用。
更新:
我又做了一次检查,并意识到只有在我使用 javascript 时才会发生这种情况:
window.Page_ClientValidate("MyGroup")
在对弹出窗口进行一些计算之前,我必须这样做。在动态验证器期间,当更新可验证控件时,一切都正常工作,即使验证失败。所以问题是 *Page_ClientValidate*