我在rails 3.2.2中使用了simple_form gem,并且正在尝试为HABTM关联设置checbox。
监控拥有并属于许多方案,反之亦然。
使用简单表格,我可以使用以下方式自动输出一组复选框:
= f.association :scenarios, as: :check_boxes
这会产生以下输出:
<div class="checkbox">
<label class="checkbox">
<div class="ui-checkbox">
<input class="check_boxes optional" id="monitoring_scenario_ids_1" name="monitoring[scenario_ids][]" type="checkbox" value="1">
</div>
Haraam Meat Found</label>
<input name="monitoring[scenario_ids][]" type="hidden" value="">
</div>
然而,如果jQuery Mobile采用以下格式,它将仅进行样式设置和识别:
<input type="checkbox" name="checkbox-1" id="checkbox-0" class="custom" />
<label for="checkbox-0">I agree</label>
任何人都知道怎么做?
答案 0 :(得分:1)
在config / initializers / simple_form.rb中将config.boolean_style
从:nested
更改为:inline
,正如您在{(3}}
答案 1 :(得分:0)
这有点像黑客,但你可以在pagecreate
事件触发时重新组织你的HTML:
//wait for the page to be created
$(document).delegate('[data-role="page"]', 'pagecreate', function () {
//loop through each of the `div.checkbox` elements
$.each($(this).find('div.checkbox'), function (index, element) {
//cache the label for this `div.checkbox` element and the form inputs
var $label = $(this).children('label').attr('for', $(this).find('input[type="checkbox"]')[0].id),
$inputs = $label.find('input');
//append the inputs at the same level as the label,
//then select the checkbox and initialize a checkbox widget
$label.parent().append($inputs).children('input[type="checkbox"]').checkboxradio();
});
});