ASP.NET验证不起作用

本文关键字:不起作用 验证 NET ASP | 更新日期: 2023-09-27 18:19:22

我做了一个注册表格,添加了一些验证,但他们没有被瞄准/解雇,我不知道出了什么问题,它似乎在Internet explorer上工作得很好,但在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>

ASP.NET验证不起作用

你能在你的firebug中检查控制台是否有JavaScript错误吗?你也可以试着为你的验证器和按钮放一个验证组

您可以尝试在加载后的代码中调用Page.Validate();。也可以将按钮CausesValidation的属性设置为true。默认情况下,页面在加载之前不会进行验证。如果原因验证为真,则应在单击按钮后进行验证。您也可以通过调用Page.Validate()

手动强制验证。

浏览器显示哪种类型的错误信息,为什么是Visual Studio Fire?你可没提过。

我认为你的错误信息是这样的

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

好的,你可以尝试在web配置中使用下面的部分来进行验证控制。我希望它能解决你的验证控制问题。

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

如果问题仍然存在,将此脚本附加到ASPX页面的<head>标签后面。

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

"jquery(大小写敏感)"此消息不应再显示。

为所有文本创建相同的验证组,并添加按钮和验证

 ValidationGroup="AAA" 

和添加代码到您的保存按钮:

 If (Page.IsValid) Then
    YOURSQL.Insert()
 'or ur code here'
  End If