0

我想用下面写的脚本来验证我的表格。我试过了,但它没有验证.. 下面是我的代码。任何建议,将不胜感激。

<form id="signupForm">
        <table id="control_Table">
            <tr>
                <td style="padding-top: 20px;">
                    <label for="fullname">
                        Full Name</label>
                </td>
                <td>
                    <asp:TextBox ID="txtFullName" runat="server"></asp:TextBox>
                </td>
            </tr>
            <tr>
                <td style="padding-top: 20px;">
                    <label for="email">
                        Email Address</label>
                </td>
                <td>
                    <asp:UpdatePanel ID="UpdatePanel2" runat="server">
                        <ContentTemplate>
                            <asp:TextBox ID="txtEmail" runat="server"></asp:TextBox>
                        </ContentTemplate>
                    </asp:UpdatePanel>
                </td>
            </tr>
            <tr>
                <td style="padding-top: 20px;">
                    <label for="username">
                        User Name</label>
                </td>
                <td>
                    <asp:UpdatePanel ID="UpdatePanel1" runat="server">
                        <ContentTemplate>
                            <asp:TextBox ID="txtuname" runat="server"></asp:TextBox>
                        </ContentTemplate>
                    </asp:UpdatePanel>
                </td>
            </tr>
            <tr>
                <td style="padding-top: 20px;">
                    <label for="password">
                        Password</label>
                </td>
                <td>
                    <asp:TextBox ID="txtPwd" runat="server" TextMode="Password"></asp:TextBox>
                </td>
            </tr>
            <tr>
                <td style="padding-top: 20px;">
                    <label for="confirm_password">
                        Confirm Password
                    </label>
                </td>
                <td>
                    <asp:TextBox ID="txtCPwd" runat="server" TextMode="Password"></asp:TextBox>
                </td>
            </tr>
            <tr>
                <td style="padding-top: 20px;">
                    Active User
                </td>
                <td>
                    <asp:CheckBox ID="chkActive" runat="server" />
                </td>
            </tr>
            <tr>
                <td style="padding-top: 20px;">
                    Admin User
                </td>
                <td>
                    <asp:CheckBox ID="chkAdmin" runat="server" />
                </td>
            </tr>
            <tr>
                <td style="padding-top: 10px;">
                    <asp:Button ID="btnSubmit" runat="server" Text="Submit" />
                </td>
            </tr>
        </table>
    </form>

下面是表单的脚本。

$.validator.setDefaults({
    submitHandler: function() {
        alert("submitted!");
    }
});

$(document).ready(function() {
    // validate the comment form when it is submitted
    // validate signup form on keyup and submit
    $("#signupForm").validate({
        rules: {
            fullname: "required",
            username: {
                required: true,
                minlength: 2
            },
            password: {
                required: true,
                minlength: 5
            },
            confirm_password: {
                required: true,
                minlength: 5,
                equalTo: "#MainContent_txtPwd"
            },
            email: {
                required: true,
                email: true
            },
            agree: "required"
        },
        messages: {
            fullname: "Please enter your firstname",
            username: {
                required: "Please enter a username",
                minlength: "Your username must consist of at least 2 characters"
            },
            password: {
                required: "Please provide a password",
                minlength: "Your password must be at least 5 characters long"
            },
            confirm_password: {
                required: "Please provide a password",
                minlength: "Your password must be at least 5 characters long",
                equalTo: "Please enter the same password as above"
            },
            email: "Please enter a valid email address",
            agree: "Please accept our policy"
        }
    });

    // propose username by combining first- and lastname
    $("#MainContent_txtuname").focus(function() {
        var firstname = $("#MainContent_txtfullname").val();
        var lastname = $("#lastname").val();
        if (firstname && lastname && !this.value) {}
    });

});​
4

2 回答 2

1

除了属性之外,您还必须为name输入提供id属性。Validate 插件和您的所有规则都必须引用namenot id

从有关validaterules选项的文档中:

定义自定义规则的键/值对。键是元素的名称(或一组复选框/单选按钮),值是由规则/参数对或纯字符串组成的对象.... [继续]

于 2012-10-23T20:40:16.900 回答
0

看看您的 ID。默认情况下,服务器控件 ID 与 ASP.NET 中的结果元素 ID 不匹配。

如果您在 .NET 框架 4.0 或更高版本上,则可以使用ClientIDMode="Static",或者只需确保在脚本中引用正确的元素 ID。

请参阅 ClientIDMode 枚举和此处的描述。

于 2012-10-23T18:40:29.297 回答