无法在validate.js中调用exactlength属性



我正在尝试使用jquery.validate.js验证我的html文件。我需要验证mobileno字段的长度,它应该是10个字符。这是我的代码:

<!-- mobile number goes here. -->
                <div class="form-group">
                    <label for="mobileno" class="col-sm-2 control-label">Mobile No.</label>
                    <div class="col-sm-8">
                        <input type="text" class="form-control" id="mobileno" name="mobileno" placeholder="Mobile No (10 digits)" required autofocus>
                    </div>
                    <span id="mobileno_error"></span>
                </div> 

对应的js文件是:

 $("#register_form").validate({
        // Specify the validation rules
        rules: {
            name: "required",
            email: {
                required: true,
                email: true
            },
            mobileno: {
                required: true,
                exactlength: 10
            },
            password: {
              required: true,
              minlength: 6
          },
          confirm_password:{
            required: true,
            equalTo: '#password'
        }
    },
        // Specify the validation error messages
        messages: {
            name:"Please enter your name.",
            email: {
                required: 'Email address is required',
                email: 'Please enter a valid email address',
            },
            mobileno: {
                required: 'Mobile number is required',
                exactlength: 'The mobile number should be of 10 characters.',
            },
            password: {
                required: 'Password is required',
                minlength: 'The password should be of minimum 6 characters.',
            },
            confirm_password: {
                required: 'Confirm password is required',
                equalTo: 'The confirm password should match password.',
            }
        },

在离开mobileno字段时,我遇到了以下问题:

jquery.validate.js:4未捕获类型错误:无法读取属性"call"的未定义。检查元素mobileno时发生异常,检查"exactlength"方法。

我不知道我做错了什么。

"我不知道我做错了什么?">

错误是准确地告诉你你做错了什么。。。

无法读取未定义的属性"call"。。。检查"精确长度">方法。

没有名为exactlength的jQuery Validate规则。不能只通过在rules对象中写入单词来制定新规则。

要强制字段的长度恰好为X个字符,您需要同时使用minlengthmaxlength规则,并将它们都设置为X.

mobileno: {
    required: true,
    minlength: 10,
    maxlength: 10
},

演示:http://jsfiddle.net/jmhjwf70/

否则,additional-methods.js文件中有一个phoneUS规则,可用于验证任何美国电话号码。有关其他电话号码规则,请参阅mobileUKphoneUKphonesUKphoneNL

如果这不令人满意,那么您可以使用.addMethod()方法编写自己的规则。

rangelength: [10, 10]

这是字段长度恰好为X个字符的函数。你必须添加额外的方法.js,否则它不支持

相关内容

  • 没有找到相关文章

最新更新