我有一个使用asp.net验证器的webform应用程序。我有一个bootstrap手风琴(或任何手风琴jquery等),我只想验证可见面板上的控件。我为每个面板设置了一个验证组。我有一个提交按钮。
我使用jquery来设置validationgroup属性,但是当这样做时,按钮会忽略该值。
我尝试过手动验证,但在这种情况下页面似乎完全跳过了验证。我真的把头靠在墙上。
<asp:button ID="btnDeleteConfirmation" runat="server" Text="Save" OnClientClick="return Validate();" CausesValidation="False"/>
function Validate() {
var isValid = false;
isValid = Page_ClientValidate(mode);
return isValid;
}
切换选项卡/面板时设置模式,检查时值正确。该函数被调用,返回值看起来不错,但页面回发然后我得到以下预期错误:
Page.IsValid cannot be called before validation has taken place. It should be queried in the event handler for a control that has CausesValidation=True and initiated the postback, or after a call to Page.Validate.
当只需要验证一个标签/面板并且只有一个提交按钮时,其他人如何处理验证客户端?
答案 0 :(得分:0)
通常在这种情况下,我会在每个部分上正确设置验证组,然后在我需要进行验证的任何按钮上
Page.Validate(groupName);
然后你可以调用Page.IsValid,它只会使用经过验证的组。这样你就不必做任何其他事情了。不要将按钮的验证组关联起来。