JQueryvalidation未validation

我正在尝试使用JQueryvalidation器插件来validationrails应用程序,但它既没有抛出任何错误也没有validation任何东西。 我不知道我的代码还有什么问题 – 任何帮助都将不胜感激!

$(document).ready(function() { $(".theform").validate({ rules: { name: { required:true, minlength:2, maxlength:50 }, email: { required: true, email: true, minlength:2, maxlength:50 }, phone_number: { required: true, phoneUS: true, minlength:9, maxlength:20 } }, messages: { name: { required: "Please provide your name", minlength: "Too few characters!", maxlength: "Too many characters!" }, email: { required: "Please provide your email", email: "Your email address must be in the format of name@domain.com", minlength: "Too few characters!", maxlength: "Too many characters!" }, phone_number: { required: "Please provide your phone number", phoneUS: "Please provide a valid US phone number", minlength: "Too few characters!", maxlength: "Too many characters!" } } }); $("input#ajax").click(function() { $.ajax({ type: "POST", url: "/create_user", data: {name: $('#name').val(), email: $('#email').val(), number: $('#phone_number').val(), ajax:"true"}, success: function(msg){ //console.log(msg.name); $("div#n").html(msg.name); $("div#e").html(msg.email); $("div#p").html(msg.phone_number); } }); }); }); 

编辑:这是我正在尝试validation的表单:

 
Name:
Email:
Phone Number:

你的选择器错了:

 $(".theform").validate({ ... }); 

选择具有类theform所有元素,这些元素都没有。 您需要选择form元素本身:

 $("#theform > form").validate({ ... }); 

要么

 $("form[name='form']").validate({ ... }); 

示例: http //jsfiddle.net/nQq6t/