我正在尝试将parsley.js添加到rails项目中以进行客户端表单验证,但似乎无法使其正常工作。
我正在使用gem for parsley作为rails资产管道 - https://github.com/mekishizufu/parsley-rails
gem "parsley-rails"
我继续在我的application.js文件
中需要它//= require jquery
//= require parsley
//= require jquery_ujs
//= require twitter/bootstrap
//= require_tree .
然后我将以下内容添加到我希望在
上验证的表单中 <%= form_for :user, :html => {:"data-validate" => 'parsley'} do |user| %>
在html中为表单生成数据属性
data-validate="parsley"
然后检查我的地址是否存在:
<%= label_tag :current_address %>
<%= text_field_tag :address, nil, :data => {:"required" => 'true'} %>
其中呈现带有文本字段属性的文本字段
data-required="true"
然而,当我点击提交时,没有发生任何验证并发出了一个帖子请求。为了让欧芹在rails 3表单上工作,我还需要做些什么?非常感谢!
答案 0 :(得分:3)
gem使用Parsley-js版本1.2.3,因为2.0.0仍然是候选版本。以下是该版本的文档:http://parsleyjs.github.io/Parsley-1.x/documentation.html
属性有点不同 - form_for标记应如下所示:
<%= form_for :user, :html => {'parsley-validate' => ''} do |user| %>
和文本字段:
<%= text_field_tag :address, 'parsley-required' => '' %>
希望这有帮助。
<强> 更新 强> 'parsley-rails'宝石现在正在使用v2.0。
答案 1 :(得分:2)
目前的版本现在是2.0.5,文档可以在http://parsleyjs.org
找到使用rails gem,您现在需要将data-parsley-validate
添加到表单和指令required
到输入。
在轨道表格中,我很幸运:
<%= form_for @post, :html => {"data-parsley-validate" => true} do |f| %>
<%= f.text_field :title, :placeholder => "Title", :required => true %>
希望这有助于某人直到parsley-rails在自述文件中获得更好的链接或基本用法文档。可能是一个不错的公关...
答案 2 :(得分:0)
通过使用
初始化parsley,我得到了欧芹在我们的Rails应用程序中工作 $('#form-id').parsley({ 'data-parsley-focus': 'first' });
&#39;数据 - 欧洲焦点&#39;是一个选项,如果验证失败,parsley将发送光标。
我在gemfile中包含了gem,但我的application.js在ujs适配器之后加载了parsley
//= require jquery
//= require jquery_ujs
//= require parsley