我想在我的Rails表单中要求<select>
。
这是我的代码(省略号是为了缩短线路):
<div class="field">
<p><%= f.label :category, "Category:" %></p>
<%= f.select :category, ['Analytics','Commerce',..., 'Web'], :prompt => '-- Select One --', :required => true %>
</div>
哪个输出
<div class="field">
<p><label for="startup_category">Category:</label></p>
<select id="startup_category" name="startup[category]">
<option value="">-- Select One --</option>
<option value="Analytics">Analytics</option>
<option value="Commerce">Commerce</option>
<option value="Content Management">Content Management</option>
<option value="Gaming">Gaming</option>
<option value="Green">Green</option>
<option value="Media">Media</option>
<option value="Social Media">Social Media</option>
<option value="Technology - Software">Technology - Software</option>
<option value="Technology - Hardware">Technology - Hardware</option>
<option value="Web">Web</option></select>
</div>
使用{:required => true}
代替:required => true
会出现语法错误,{:prompt => '-- Select One --', :required => true}
呈现页面,但我的select标记中没有required="true"
。
如何在我的代码中获得required="true"
?
答案 0 :(得分:39)
尝试这个......
f.select :category, ['Analytics','Commerce',..., 'Web'], { :include_blank => '-- Select One --' }, :required => true
答案 1 :(得分:3)
Rails 4
f.select :category,
['Analytics','Commerce',..., 'Web'],
{
include_blank: '-- Select One --' ,
required: true
}
答案 2 :(得分:1)
我不确定它是否能达到你想要的效果,但我有两个解决方案。你可以使用simpleform gem。
OR
设计风格:
<label class="required">Category</label>
in css:
label.required:after{content:"*"}