使用Foundation 6和Abide我希望以简单的形式提供此标记:
<input class="string optional" pattern="text" type="text" name="service[street_address]" id="service_street_address" required>
具有required
属性。
我试过了:
<%= service.input_field :street_address, data: {:required => ''}, pattern:"text" %>
但required
标记变为data-required
并打破了Abide验证:
<input data-required="" class="string optional" pattern="text" type="text" name="service[street_address]" id="service_street_address">
有没有办法只有required
或required=""
?
答案 0 :(得分:1)
如果需要:true不起作用,请尝试:
<%= service.text_field :postal_box, required: "required", pattern: "text" %>
答案 1 :(得分:0)
“必需”变为“需要数据”,因为您已将其放入数据:{}。以下数据:{}的作用是为您创建data- *标记。因此,最终输入是“需要数据”也就不足为奇了。如果您正在寻找“必需”,那么您使用的是错误的方法。
使用普通的form_for标记,您可以将属性作为哈希中的选项传递,如下所示:
<%= service.input_field :street_address, required: true, pattern:"text" %>
使用simple_form,因为simple_form会自动创建包装器和标签,所以您必须澄清是要将属性添加到输入,如下所示:
<%= service.input_field :street_address, input_html: { required: true }, pattern:"text" %>
我相信,在您的情况下,input_field是form_for,而不是simple_form标记。所以尝试第一种方法,如果它不起作用,请尝试第二种方法。
(作为旁注,你会注意到它产生的输入有这个html:
<input required="required">
而不是:
<input required>
但这些完全相同)