-2

我正在尝试使用 jQuery 来验证我的两个密码字段。

我的代码如下所示:

jQuery('#settingsForm').validate(
    rules : {
        npassword : {
        },
        pass_check : {
            equalTo : '#npassword'
        }
    }
});

这是输入字段的 HTML:

<label for='npassword'>New Password</label>
<input type='password' class='span10 password_check' name='npassword' id='npassword' value='' placeholder='New Password'>
<div class='separator'></div> 

<label for='pass_check'>Confirm New Password</label>
<input type='password' class='span10' name='pass_check' id='pass_check' value='' placeholder='Confirm New Password'>
<div class='separator'></div> 

虽然这没有任何作用。我应该改变什么?一般来说,我是 jQuery 和 Javascript 的新手。

提前致谢。

4

3 回答 3

1

您应该填写 的配置npassword,例如使用required: true。见这里:http: //jsfiddle.net/JtTgM/

于 2013-05-25T14:08:30.467 回答
0

1)你缺少一个左大括号, {, 之后.validate(:

jQuery('#settingsForm').validate({ // <-- opening brace { was missing

2)也许您想required为第一个密码字段指定规则。否则,当两个字段都为空时,它们都匹配并且表单有效。

npassword: {
    required: true
},

3)messages您可以使用以下选项 覆盖默认消息:

jQuery('#settingsForm').validate({
    rules: {
        npassword: {
            required: true
        },
        pass_check: {
            equalTo: '#npassword'
        }
    },
    messages: {
        npassword: {
            required: "this field is required"
        },
        pass_check: {
            equalTo: "the passwords must match"
        }
    }
});

工作演示:http: //jsfiddle.net/vsLWg/

于 2013-05-26T15:17:16.053 回答
0
$( "#Form").validate({
  rules: {
    old_password: "required",
    password: "required",
    new_password: {
      equalTo: "#password"
    }
  }
});
于 2018-05-11T07:02:57.987 回答