jQueryvalidation规则和消息

我在设置jQueryvalidation的规则和消息时遇到了麻烦。

我试图从resume [zip_code]获取值,但我不知道如何在JQuery中编写它。 我试过了

rules: { resume[zip_code]: required: true } 

但不起作用。

这是我需要从中获取值的地方。

 

应用代码

 post '/create_resume' do session[:errors].clear @user = User.first(:email_address => session['user']) @resume = @user.resumes.new(params[:resume]) @resume.save params[:education].each_key do |school| @school = @resume.educations.new(params[:education][school] @school.save end params[:job].each_key do |job| @job = @resume.jobs.new(params[:job][job]) @job.save end params[:otherskill].each_key do |other| @otherskill = @resume.otherskills.new(params[:otherskill][other]) @otherskill.save end if session[:errors].empty? === false erb :resume_form else session[:resume_output].clear erb :resume_output end end 

jQuery的

我知道布局是什么,但只是不知道如何检索值

 $(#myForm).validate({ rules: { something: key => value }, messages: { something: "value" } }); 

我不知道如何编写规则,因为你从未说过你想要的规则。 仅使用您提供的HTML,这就是您设置规则和消息的方式。

为了演示用法,我任意制作required的字段,最小长度为5个数字。

相应地编辑和添加自己的规则。

 $('#myForm').validate({ rules: { "resume[zip_code]": { required: true, minlength: 5, digits: true } }, messages: { "resume[zip_code]": { required: "this field is required", minlength: "this field must contain at least {0} characters", digits: "this field can only contain numbers" } } }); 

您也不需要在HTML中放置class="required" ,因为此规则已在jQuery .validate()指定。

  

工作演示:

http://jsfiddle.net/vL7ps/

请参阅所有方法和规则的文档:

http://docs.jquery.com/Plugins/Validation


如果要将该字段validation为必需的美国邮政编码,只需使用zipcodeUS规则,但必须先包含此处的“其他方法”文件。

http://ajax.aspnetcdn.com/ajax/jquery.validate/1.10.0/additional-methods.js

jQuery的:

 rules: { "resume[zip_code]": { required: true, zipcodeUS: true } }, messages: { "resume[zip_code]": { required: "this field is required", zipcodeUS: "this field must contain valid US zip code" } } 

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