jQuery添加自定义密码规则不起作用

时间:2014-03-21 11:12:41

标签: javascript jquery validation jqueryform

我是jQuery的新手,我正在使用jQuery表单验证器验证我的表单..

问题是,我必须验证密码,因为它必须包含至少一位数字。

我在Google上搜索过,我在Link to forum.jquery

找到了示例

以下是我的HTML代码的片段

  <form  name="f2" id="f2" method="post" action="hello">
     <table>
      <tr>
             <th>
                 Password
             </th>
              <td>
             <input type="password" name="pwd" id="pwd"  placeholder="Enter Password" class="text_box">
              </td>
      </tr>
      <tr>
           <td>
              <button type="submit" class="submit-button">Register</button>
           </td>
      </tr>

     </table>
    </form>

    //jquery script for form validation

      <script>
        $(document).ready(function(){
            $("#f2").validate({
                debug: false,
                rules: { 

                 pwd:{
                        required:true,
                        minlength:5
                    }

                 },
                messages:
                    {
                      pwd:{
                        required:"Please enter password",
                        minlength:"Please enter minimum characters"
                    }
                 }
             });
        });
    </script>

一切正常,直到我将此行添加到上面的代码规则

pwd:{
    required:true,
    minlength:5,
    mypassword: true
}

我添加了包含以下方法的附加脚本文件

jQuery.validator.addMethod('mypassword', function(value, element) 
{
    return this.optional(element) || (value.match(/[a-zA-Z]/) && value.match(/[0-9]/));
},
'Password must contain at least one numeric and one alphabetic character.');

尝试执行上述代码后,我在浏览器控制台中收到以下错误消息,如下所示:

  

未捕获的TypeError:无法调用未定义的方法'call'   JS / jqueryvalidation.js

为什么其他方法不起作用?

非常感谢任何帮助或建议。

1 个答案:

答案 0 :(得分:0)

请查看fiddler链接中的示例:http://jsfiddle.net/NaaEw/

    jQuery.validator.addMethod('mypassword', function(value, element) 
    {
       return this.optional(element) || (value.match(/[a-zA-Z]/) && value.match(/[0-9]/));
    });

和消息:

    pwd:{
                    required:"Please enter password",
                    minlength:"Please enter minimum characters",
      mypassword: 'Password must contain at least one numeric and one alphabetic character.'

希望这是你所期待的。