将select all选项添加到简单表单关联集合

时间:2014-07-08 01:37:06

标签: ruby-on-rails html5 ruby-on-rails-4 twitter-bootstrap-3 simple-form

我正在使用simple_form 3和bootstrap 3 with rails 4.我正在使用以下表格

   <%= f.association :characteristics, collection: @holidays, 
                                       prompt: "Select Holidays", 
                                       label: false,  as: :check_boxes %>

我不想按照Rails 3.1 Select All checkbox的建议使用按钮,我更喜欢与其他复选框位于同一列表中的复选框。

如何设置此&#34;全选&#34;复选框?

1 个答案:

答案 0 :(得分:1)

尝试以下方法:

<%= f.association :characteristics, 
                  collection: [Holiday.new(id: 0, name: 'Select All')] + @holidays, 
                  label: false,  as: :check_boxes,
                  input_html: {data: {behaviour: 'select-all'}} %>

然后在js:

$('[data-behaviour="select-all"][value=0]').on('change', function(){
  var checked = this.checked;
  $('[data-behaviour="select-all"]').each(function(){
    $(this).prop('checked', checked);
  });
})

不是一个优雅的解决方案,但我认为它应该有效