काम नहीं कर रहा CustomValidator मैं एएसपी का निम्न भाग है:अच्छी तरह से
<asp:ValidationSummary ID="RegisterUserValidationSummary" runat="server" CssClass="failureNotification"
ValidationGroup="RegisterUserValidationGroup"/>
...
<asp:Label ID="UserNameLabel" runat="server" AssociatedControlID="UserNameTB">Username:</asp:Label>
<asp:TextBox ID="UserNameTB" runat="server" CssClass="textEntry"></asp:TextBox>
<asp:RegularExpressionValidator ID="RegularExpressionValidator1" ControlToValidate="UserNameTB"
ValidationExpression="[a-zA-Z]{3,8}" ErrorMessage="Username must be between 3 to 8 chars" runat="server"
CssClass="failureNotification" ToolTip="Username must be between 3 to 8 chars" ValidationGroup="RegisterUserValidationGroup">
*</asp:RegularExpressionValidator>
<asp:CustomValidator ID="NoUserValidator" ControlToValidate="UsernameTB" runat="server" ErrorMessage="User Taken!" CssClass="failureNotification"
ValidationGroup="RegisterUserValidationGroup" OnServerValidate="UserValidate">*</asp:CustomValidator>
और फिर समारोह:
protected void UserValidate(object source, ServerValidateEventArgs args)
{
SqlDataSource1.SelectCommand = "SELECT ClientID FROM [Clients] WHERE Username= '" + UserNameTB.Text + "'";
DataView dv = (DataView)SqlDataSource1.Select(DataSourceSelectArguments.Empty);
if (dv.Table.Rows.Count != 0)
args.IsValid = false;
else
args.IsValid = true;
}
बटन:
<asp:Button ID="CreateUserButton" runat="server" CommandName="MoveNext" Text="Create User"
ValidationGroup="RegisterUserValidationGroup"
onclick="CreateUserButton_Click"/>
समस्या यह है कि कस्टम सत्यापनकर्ता फ़ंक्शन को बुलाया जाता है और .IsValid
को झूठी, पर सेट करता है, बटन तर्क अभी भी चलता है!
मैं अगर यह कुछ भी लायक है यकीन है कि नहीं हूँ, लेकिन मैं भी स्थापित करने के लिए NoUserValidator.IsValid = false – RanH
मैं अपने मार्कअप में बटन दिखाई नहीं देता, लेकिन यकीन है कि यह अपने ValidationGroup अपने RegisterUserValidationGroup पर सेट है बनाने की कोशिश की। – Gloopy
मैंने संदेश – RanH