我正在使用garlic.js 来验证我的表单。Garlic.js 建议在表单标签上添加数据属性。
这是我需要生成的:
<form data-validate="parsley">
我在表单标签上生成此数据属性时遇到问题。我尝试了一切,但没有任何效果。有人对此有解决方案吗?
我正在使用garlic.js 来验证我的表单。Garlic.js 建议在表单标签上添加数据属性。
这是我需要生成的:
<form data-validate="parsley">
我在表单标签上生成此数据属性时遇到问题。我尝试了一切,但没有任何效果。有人对此有解决方案吗?
试试这个:
<%= simple_form_for @entity, :html => {:"data-validate" => 'parsley'} do |f| %>
<!-- inputs -->
<% end %>
更新
从下面的评论中,要让表单包含一个没有值的 HTML5 数据属性,请尝试以下操作:
<%= simple_form_for @entity, :html => {:"other-data-value" => ''} do |f| %>
通过将属性设置为空字符串,表单助手只呈现属性。
您可以通过传入数据哈希直接设置数据属性,但所有其他 HTML 选项必须包含在 HTML 键中。例子:
<%= form_for(@post, data: { validate: "parsley" }, html: { name: "go" }) do |f| %>
...
<% end %>
为此生成的 HTML 将是:
<form action='http://www.example.com' method='post' data-validate='parsley' name='go'>
...
</form>
对于在 2016 年使用较新版本的 Rails (4) 或较新版本的 Parsley (2) 遇到此问题的任何人,您需要执行以下操作:
首先,在您data-parsley-validate
现在添加的新版本中使用数据属性激活 parsley,而不是data-validate="parsley"
来自 Parsley 的版本 1。现在让我们让它与 rails 一起工作form_for
。
即使您不使用欧芹,这也是在 Rails 4 中插入数据属性的方法。
<%= form_tag '/login', :"data-parsley-validate" => '' do %>
<!-- inputs -->
<% end %>
所以基本上区别在于不使用html=>{}
哈希。我试着看看这个技巧是否有效,至少对我来说,我的标记看起来像这样:
<form action="/login" method="post" html="{:data-parsley-validate}">
<!-- inputs -->
</form>
但是,只需将数据属性作为符号直接放在那里,并以空字符串作为相应的值,它就可以完美地工作。这是我收到的标记。
<form action="/login" method="post" data-parsley-validate>
<!-- inputs -->
</form>
换句话说,它是完美的。这就是如何使用 Rails 4 在你的form_tag
.