我试图让我的按钮显示为内联并且还有一个默认值,因为它不能为空。我正在使用plataformatex / simple_form和bootstrap。
= f.collection_radio_buttons :is_private,[[true,'Private'],[false,'Public']],:first,:last,style: "display:inline",default: true
正在渲染:
<span> <input id="workout_is_private_true" name="workout[is_private]" type="radio" value="true" /> <label class="collection_radio_buttons" for="workout_is_private_true">Private</label> </span> <span> <input id="workout_is_private_false" name="workout[is_private]" type="radio" value="false" /> <label class="collection_radio_buttons" for="workout_is_private_false">Public</label> </span>
很明显,风格:不能正常工作,但我不知道会发挥什么作用。
接下来又有一个建议
.radio_buttons { display:inline; } = f.collection_radio_buttons :is_private,:item_wrapper_class => 'radio_buttons',:default => true
得到:
<span class="radio_buttons"> <input id="workout_is_private_true" name="workout[is_private]" type="radio" value="true" /> <label class="collection_radio_buttons" for="workout_is_private_true">Private</label> </span> <span class="radio_buttons"> <input id="workout_is_private_false" name="workout[is_private]" type="radio" value="false" /> <label class="collection_radio_buttons" for="workout_is_private_false">Public</label> </span>
只是另一个注意,默认值仍然不工作。
解决方法
如果您希望内联,您需要通过执行以下操作来将标签赋给内联类:item_wrapper_class => ‘一致’
以下是使用代码的示例:
= f.input :is_private,:collection => [[true,:label_method => :last,:value_method => :first,:as => :radio_buttons,:item_wrapper_class => 'inline',:checked => true
编辑:我只是意识到我的答案对simple_form引导更具体,因为在给出标签的内联类时,引导已经定义了样式。你应该可以使用我的例子,但是在创建你的自定义CSS时,最后只需要一些更多的工作。