Ruby on rails 自定义多选输入
所以,当我做一个Ruby on rails 自定义多选输入,ruby-on-rails,formtastic,Ruby On Rails,Formtastic,所以,当我做一个 <%= f.input :categories, :required => false, :as => :select, :input_html => {:size => 29, :multiple => true}, :collection => CategoriesList.all %> false,:as=>:select,:input\u html=>{:size=>29,:multiple=>true},:collec
<%= f.input :categories, :required => false, :as => :select, :input_html => {:size => 29, :multiple => true}, :collection => CategoriesList.all %>
false,:as=>:select,:input\u html=>{:size=>29,:multiple=>true},:collection=>CategoriesList.all%>
我目前有:
<div class="control-group">
<div class="select input optional" id="filters_categories_input">
<input name="filters[categories][]" type="hidden" value="">
<label class=" control-label" for="filters_categories">Categories</label>
<input name="filters[categories][]" type="hidden" value="">
<select id="filters_categories" multiple="multiple" name="filters[categories][]" size="29"><option value="133">Bathroom Remodeling</option>
<option value="134">Cabinets & Carpenters</option>
<option value="136">Demolition</option>
<option value="137">Drywall</option>
<option value="139">Electricians</option>
<option value="141">Fences, Doors & Gates</option>
<option value="143">Flooring</option>
<option value="144">General Contractors</option>
<option value="145">Heating & Air Conditioning</option>
<option value="146">Kitchen Remodeling</option>
<option value="147">Landscaping</option>
<option value="149">Painters</option>
<option value="150">Plumbers</option>
<option value="151">Roofing</option>
<option value="152">Swimming Pools</option>
<option value="154">Windows & Blinds</option>
<option value="14377">Architects</option>
<option value="14379">Alarms, Audio & Video</option>
<option value="14381">Interior Designers</option>
<option value="14382">Pool Services</option>
<option value="36608">Cleaning Services</option>
<option value="37012">Commercial Contractors</option>
<option value="37013">Custom Home Builders</option>
<option value="37014">Handymen</option>
<option value="37045">Locksmiths</option>
<option value="37074">Home Inspectors</option>
<option value="37080">Hauling Services</option>
<option value="37086">Telecommunications</option>
<option value="40301">Concrete</option>
<option value="55555">Remodeling</option></select>
</div>
</div>
类别
浴室改造
柜及;木匠
拆毁
干墙
电工
围栏、门及;盖茨
地板
总承包商
供暖及空调系统;空调
厨房改造
园林绿化
画家
水管工
屋顶
游泳池
视窗及;百叶窗
建筑师
警报、音频和音频;视频
室内设计师
游泳池服务
清洁服务
商业承包商
定制房屋建筑商
勤杂工
锁匠
家居督察
运输服务
电信
混凝土
重塑
但我必须集成一个twitter引导模板,我希望生成的选择尽可能像这样:
<div class="control-group">
<label class="control-label">Multiple Select input</label>
<div class="controls"> <select multiple> <option>First option</option> <option selected>Second option</option> <option>Third option</option>
<option>Fourth option</option>
<option>Fifth option</option>
<option>Sixth option</option>
<option>Seventh option</option>
<option>Eighth option</option>
</select>
</div>
</div>
多选输入
第一种选择第二种选择第三种选择
第四种选择
第五种选择
第六种选择
第七种选择
第八种选择
但是我不知道怎么做。选项1)首先,将f.input拆分为f.label和f.select, 这样看起来就像:
<%=f.label "Multiple Select Input"%>
<%= f.select :categories, CategoriesList.all.collect {|x| [x.category, x.id]}, {}, :multiple => true %>
正确%>
然后用所需的div将其包装:
<div class="control-group">
<%=f.label "Multiple Select Input", :class => "control-label"%>
<%= f.select :categories, CategoriesList.all.collect {|x| [x.category, x.id]}, {}, :multiple => true, :class => "controls" %>
</div>
“控制标签”%>
true,:class=>“控件”%>
选项2)使用gem来处理样式设置。f.select接受的参数不超过四个。所以声明
<%= f.select :categories, CategoriesList.all.collect {|x| [x.category, x.id]}, {},:multiple => true, :class => "controls" %>
true,:class=>“控件”%>
将抛出错误。相反,您可以执行以下操作:
<%= f.select :categories, CategoriesList.all.collect {|x| [x.category, x.id]}, {},{:multiple => true, :class => "controls"} %>
true,:class=>“controls”}%>