2013-07-28 36 views
1

我一直在寻找以下问题jQuery验证:Password confirmation trouble with jQuery validation plugin确认密码不工作

我复制上的jsfiddle代码和编辑它相应地使我的服务器上运行,但它似乎并不奏效我无法弄清楚!请帮助,谢谢!

这是我的代码。

<!doctype html> 
<html lang="en"> 
<head> 
    <meta charset="UTF-8"> 
    <title>Document</title> 
<script src="http://code.jquery.com/jquery-1.7.2.min.js"></script> 
<script src="http://ajax.aspnetcdn.com/ajax/jquery.validate/1.11.1/jquery.validate.min.js"></script>   
<script> 
$.validator.setDefaults({ 
    submitHandler: function() { 
     alert("submitted!"); 
    } 
}); 

// validate signup form on keyup and submit 
$("form").validate({ 
    rules: { 
     pass: { 
      required: true, 
      minlength: 5 
     }, 
     pass2: { 
      required: true, 
      minlength: 5, 
      equalTo: "#pass" 
     } 
    }, 
    messages: { 
     pass: { 
      required: "Please provide a password", 
      minlength: "Your password must be at least 5 characters long" 
     }, 
     pass2: { 
      required: "Please provide a password", 
      minlength: "Your password must be at least 5 characters long", 
      equalTo: "Please enter the same password as above" 
     } 
    } 
}); 
</script> 

</head> 
<body> 
<form> 
<table> 
    <tr> 
     <td>Password</td> 
     <td> 
      <label for="pass"></label> 
      <input id="pass" name="pass" type="password" value="" /> 
     </td> 
    </tr> 
    <tr> 
     <td>Password confirm</td> 
     <td> 
      <label for="pass2"></label> 
      <input id="pass2" name="pass2" type="password" value="" /> 
     </td> 
    </tr> 
</table> 
<input type="submit" name="save" value="Save" /> 
</form> 
</body> 
</html> 
+0

你有jQuery验证插件脚本加载? (因为验证器是一个单独的.js文件) – Sergio

+0

你是指这个, Belgarion

+0

_“它似乎没有工作”_ _它似乎在做什么_does_?期望的行为是什么?实际行为是什么?浏览器控制台中的任何错误? – nnnnnn

回答

4

尝试包装你的JS这个功能

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

// validate signup form on keyup and submit 
$("form").validate({ 
    rules: { 
     pass: { 
      required: true, 
      minlength: 5 
     }, 
     pass2: { 
      required: true, 
      minlength: 5, 
      equalTo: "#pass" 
     } 
    }, 
    messages: { 
     pass: { 
      required: "Please provide a password", 
      minlength: "Your password must be at least 5 characters long" 
     }, 
     pass2: { 
      required: "Please provide a password", 
      minlength: "Your password must be at least 5 characters long", 
      equalTo: "Please enter the same password as above" 
     } 
    } 
}); 
}); 
+0

谢谢dz15,它终于工作了! =) – Belgarion

+1

太棒了!当你看着JSFiddle时,请记住看到如何在左侧加载JavaScript。如果它说onLoad $(window).load(function(){code here});或domReady $(function(){code here});你将需要把它放在这些功能中。 – dz15

+0

@ dz15,似乎你可以帮助我。看看这个:https://stackoverflow.com/questions/47086843/how-can-i-make-two-message-in-password-confirmation-in-jquery-validate。案件是一样的。但我的情况不需要密码和密码确认 –