ASP.NET Validation not working

16,253

Solution 1

Can you check you console in your firebug for any JavaScript errors? Also you can try to put a validation group for you validators and button.

Solution 2

You can try calling Page.Validate(); in the code behind on load. You can also set the property of a button CausesValidation to true. By default the page doesn't validate before it loads. It should validate after you click a button if cause validation is true. You can also manually force validation by calling Page.Validate()

Solution 3

Which type of error message shown in browser or why Visual Studio Fire? You did not mention it.

I think your error message is like this

WebForms UnobtrusiveValidationMode requires a ScriptResourceMapping for 'jquery'. Please add a ScriptResourceMapping named jquery(case-sensitive).

Ok, you may try to use this bellow section in web config for validation control. I hope it will solve your validation control problem.

  <appSettings>
    <!--
      For Validation Control
      -->
    <add key="ValidationSettings:UnobtrusiveValidationMode" value="None" />
  </appSettings>

If the problem continues, attach this script in your ASPX page behind the <head> tag.

http://ajax.aspnetcdn.com/ajax/jQuery/jquery-1.8.2.min.js

"jquery(case-sensitive)" this message should not be shown again.

Share:
16,253
Abanoub
Author by

Abanoub

I am (Polyglot/Full-Stack) Developer able to build a Web/Mobile presence from the ground up - from concept, navigation, layout and programming to UX. Skilled at writing well-designed, testable and efficient code using current best practices in development. Fast learner, hard worker and team player who is proficient in an array of languages and tools. My formal field of study was on the English language at The Higher Institute of Language, however I have spent several thousands of hours over the past 10 years practicing and mastering a variety of programming languages. Programming is both my passion and my career choice - for this reason I can offer my dedication and passion in software engineering on a variety of platforms in your projects.

Updated on June 04, 2022

Comments

  • Abanoub
    Abanoub almost 2 years

    I made a registration form , add to it some validation but they not being targeted/fired , am not sure what's wrong , also it seems to work fine on Internet Explore but not on firefox:

    <%@ Page Language="C#" AutoEventWireup="true" CodeFile="Register.aspx.cs" Inherits="Register" %>
    
    <!DOCTYPE html>
    
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head runat="server">
        <title></title>
        <style type="text/css">
            .auto-style1 {
                width: 100%;
            }
            .auto-style2 {
                width: 143px;
                text-align: right;
            }
            .auto-style3 {
                width: 280px;
            }
            .auto-style4 {
                font-size: x-large;
                text-align: left;
            }
        </style>
    </head>
    <body>
        <form id="form1" runat="server">
        <div class="auto-style4">
    
            Registeration</div>
            <table class="auto-style1">
                <tr>
                    <td class="auto-style2">Username:</td>
                    <td class="auto-style3">
                        <asp:TextBox ID="tbUserName" runat="server"  Width="277px" MaxLength="16"></asp:TextBox>
                    </td>
                    <td>
                        <asp:RequiredFieldValidator ID="RequiredFieldValidator1" runat="server" ControlToValidate="tbUserName" ErrorMessage="*" ForeColor="Red"></asp:RequiredFieldValidator>
                        <asp:RangeValidator ID="RangeValidator1" runat="server" ControlToValidate="tbUserName" ErrorMessage="4 - 16 Characters!" ForeColor="Red" MaximumValue="16" MinimumValue="4" Type="Integer"></asp:RangeValidator>
                    </td>
                </tr>
                <tr>
                    <td class="auto-style2">Password:</td>
                    <td class="auto-style3">
                        <asp:TextBox ID="tbPassword" runat="server" Width="277px" MaxLength="16"></asp:TextBox>
                    </td>
                    <td>
                        <asp:RequiredFieldValidator ID="RequiredFieldValidator2" runat="server" ControlToValidate="tbPassword" ErrorMessage="*" ForeColor="Red"></asp:RequiredFieldValidator>
                        <asp:RangeValidator ID="RangeValidator2" runat="server" ControlToValidate="tbPassword" ErrorMessage="4 - 16 Characters!" ForeColor="Red" MaximumValue="16" MinimumValue="4" Type="Integer"></asp:RangeValidator>
                    </td>
                </tr>
                <tr>
                    <td class="auto-style2">Confirm Password:</td>
                    <td class="auto-style3">
                        <asp:TextBox ID="tbConfPassword" runat="server" Width="277px" MaxLength="16"></asp:TextBox>
                    </td>
                    <td>
                        <asp:RequiredFieldValidator ID="RequiredFieldValidator3" runat="server" ControlToValidate="tbConfPassword" ErrorMessage="*" ForeColor="Red"></asp:RequiredFieldValidator>
                        <asp:RangeValidator ID="RangeValidator3" runat="server" ControlToValidate="tbConfPassword" ErrorMessage="4 - 16 Characters!" ForeColor="Red" MaximumValue="16" MinimumValue="4" Type="Integer"></asp:RangeValidator>
                    </td>
                </tr>
                <tr>
                    <td class="auto-style2">Email:</td>
                    <td class="auto-style3">
                        <asp:TextBox ID="tbEmail" runat="server" Width="277px"></asp:TextBox>
                    </td>
                    <td>
                        <asp:RequiredFieldValidator ID="RequiredFieldValidator4" runat="server" ControlToValidate="tbEmail" ErrorMessage="*" ForeColor="Red"></asp:RequiredFieldValidator>
                    </td>
                </tr>
                <tr>
                    <td class="auto-style2">First Name:</td>
                    <td class="auto-style3">
                        <asp:TextBox ID="tb1stName" runat="server" Width="277px" MaxLength="16"></asp:TextBox>
                    </td>
                    <td>
                        <asp:RequiredFieldValidator ID="RequiredFieldValidator5" runat="server" ControlToValidate="tb1stName" ErrorMessage="*" ForeColor="Red"></asp:RequiredFieldValidator>
                        <asp:RangeValidator ID="RangeValidator4" runat="server" ControlToValidate="tb1stName" ErrorMessage="4 - 16 Characters!" ForeColor="Red" MaximumValue="16" MinimumValue="4" Type="Integer"></asp:RangeValidator>
                    </td>
                </tr>
                <tr>
                    <td class="auto-style2">Second Name:</td>
                    <td class="auto-style3">
                        <asp:TextBox ID="tb2ndName" runat="server" Width="277px" MaxLength="16"></asp:TextBox>
                    </td>
                    <td>
                        <asp:RequiredFieldValidator ID="RequiredFieldValidator6" runat="server" ControlToValidate="tb2ndName" ErrorMessage="*" ForeColor="Red"></asp:RequiredFieldValidator>
                        <asp:RangeValidator ID="RangeValidator5" runat="server" ControlToValidate="tb2ndName" ErrorMessage="4 - 16 Characters!" ForeColor="Red" MaximumValue="16" MinimumValue="4" Type="Integer"></asp:RangeValidator>
                    </td>
                </tr>
                <tr>
                    <td class="auto-style2">Age:</td>
                    <td class="auto-style3">
                        <asp:TextBox ID="tbAge" runat="server" Width="277px"></asp:TextBox>
                    </td>
                    <td>
                        <asp:RequiredFieldValidator ID="RequiredFieldValidator7" runat="server" ControlToValidate="tbAge" ErrorMessage="*" ForeColor="Red"></asp:RequiredFieldValidator>
                    </td>
                </tr>
                <tr>
                    <td class="auto-style2">Gender:</td>
                    <td class="auto-style3">
                        <asp:DropDownList ID="dlGender" runat="server" Width="277px">
                            <asp:ListItem Selected="True">Select Gender</asp:ListItem>
                            <asp:ListItem>Male</asp:ListItem>
                            <asp:ListItem>Female</asp:ListItem>
                        </asp:DropDownList>
                    </td>
                    <td>
                        <asp:RequiredFieldValidator ID="RequiredFieldValidator8" runat="server" ControlToValidate="dlGender" ErrorMessage="*" ForeColor="Red"></asp:RequiredFieldValidator>
                    </td>
                </tr>
                <tr>
                    <td class="auto-style2">Secret Question1:</td>
                    <td class="auto-style3">
                        <asp:DropDownList ID="dl1stQ" runat="server" Height="24px" Width="277px">
                            <asp:ListItem Selected="True">Select Question</asp:ListItem>
                            <asp:ListItem>What is your Favourite Car Manufacturer?</asp:ListItem>
                            <asp:ListItem>What is your Favourite Food?</asp:ListItem>
                            <asp:ListItem>What is your Favourite Video Game?</asp:ListItem>
                            <asp:ListItem>What is your Favourite Drink?</asp:ListItem>
                            <asp:ListItem>What is your Favourite Brand?</asp:ListItem>
                        </asp:DropDownList>
                    </td>
                    <td>
                        <asp:RequiredFieldValidator ID="RequiredFieldValidator9" runat="server" ControlToValidate="dl1stQ" ErrorMessage="*" ForeColor="Red"></asp:RequiredFieldValidator>
                    </td>
                </tr>
                <tr>
                    <td class="auto-style2">Answer:</td>
                    <td class="auto-style3">
                        <asp:TextBox ID="tbAnswer" runat="server" Width="277px"></asp:TextBox>
                    </td>
                    <td>
                        <asp:RequiredFieldValidator ID="RequiredFieldValidator10" runat="server" ControlToValidate="tbAnswer" ErrorMessage="*" ForeColor="Red"></asp:RequiredFieldValidator>
                    </td>
                </tr>
                <tr>
                    <td class="auto-style2">Secret Question2:</td>
                    <td class="auto-style3">
                        <asp:DropDownList ID="dlQ2" runat="server" Height="16px" Width="277px">
                            <asp:ListItem Selected="True">Select Question</asp:ListItem>
                            <asp:ListItem>What is your Favourite Sports Team?</asp:ListItem>
                            <asp:ListItem>Who is your Favourite Singer?</asp:ListItem>
                            <asp:ListItem>Who is your Favourite Actor?</asp:ListItem>
                            <asp:ListItem>Who is your Favourite Actress?</asp:ListItem>
                            <asp:ListItem>Who is your favourite Sports Player?</asp:ListItem>
                        </asp:DropDownList>
                    </td>
                    <td>
                        <asp:RequiredFieldValidator ID="RequiredFieldValidator11" runat="server" ControlToValidate="dlQ2" ErrorMessage="*" ForeColor="Red"></asp:RequiredFieldValidator>
                    </td>
                </tr>
                <tr>
                    <td class="auto-style2">Answer:</td>
                    <td class="auto-style3">
                        <asp:TextBox ID="tbAnswer2" runat="server" Width="277px"></asp:TextBox>
                    </td>
                    <td>
                        <asp:RequiredFieldValidator ID="RequiredFieldValidator12" runat="server" ControlToValidate="tbAnswer2" ErrorMessage="*" ForeColor="Red"></asp:RequiredFieldValidator>
                    </td>
                </tr>
                <tr>
                    <td class="auto-style2">Secret Question3:</td>
                    <td class="auto-style3">
                        <asp:DropDownList ID="dlQ3" runat="server" Width="277px">
                            <asp:ListItem Selected="True">Select Question</asp:ListItem>
                            <asp:ListItem>What is your mother Maiden Name?</asp:ListItem>
                            <asp:ListItem>Where were you born?</asp:ListItem>
                            <asp:ListItem>What was your first best friends Name?</asp:ListItem>
                            <asp:ListItem>Who was your first kiss?</asp:ListItem>
                        </asp:DropDownList>
                    </td>
                    <td>
                        <asp:RequiredFieldValidator ID="RequiredFieldValidator13" runat="server" ControlToValidate="dlQ3" ErrorMessage="*" ForeColor="Red"></asp:RequiredFieldValidator>
                    </td>
                </tr>
                <tr>
                    <td class="auto-style2">Answer:</td>
                    <td class="auto-style3">
                        <asp:TextBox ID="tbAnswer3" runat="server" Width="277px"></asp:TextBox>
                    </td>
                    <td>
                        <asp:RequiredFieldValidator ID="RequiredFieldValidator14" runat="server" ControlToValidate="tbAnswer3" ErrorMessage="*" ForeColor="Red"></asp:RequiredFieldValidator>
                    </td>
                </tr>
            </table>
        </form>
    </body>
    </html>
    
  • Karl Anderson
    Karl Anderson almost 11 years
    Server-side validation is a MUST! You cannot rely only on client-side validation, as it is way too easy to circumvent. Client-side validation is nice, because it is almost immediate feedback, but you MUST always validate the data the server receives.