ruby-on-rails – 使用切换按钮代替复选框(Rails,Twitter Bootstrap,Simple_form)

前端之家收集整理的这篇文章主要介绍了ruby-on-rails – 使用切换按钮代替复选框(Rails,Twitter Bootstrap,Simple_form)前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我使用Simple_form,twitter bootstrap和rails 3.2.2

有没有人知道有没有办法使用“toggle button”选项来引导在simple_form中的布尔字段?我想用按钮替换复选框.

这是我迄今为止尝试过的形式(rails):

<%= f.input :client_approved,:input_html => { :class => 'btn btn-primary',:data => {:toggle => 'button'} } %>

这是HTML输出

<input class="boolean optional btn btn-primary" data-toggle="button" id="id_card_design_client_approved" name="id_card_design[client_approved]" type="checkBox" value="1">

关于如何将一个按钮标签分配给simple_form输入的任何想法?

解决方法

我已经提出了一个基于JS的方法…我确定这不是最好的方法,但它的作品…

在您的视图文件中,添加以下内容

<div id="client_approved_buttons" class="btn-group" data-toggle="buttons-radio">
  <%= f.input : client_approved,as: :hidden %>
  <a class="btn" data-value="1">Yes</a>
  <a class="btn" data-value="0">No</a>
</div>

然后在你的JS文件添加

// make button toggles update hidden field
$('.btn-group a').on('click',function(event){
  event.preventDefault();
  var input = $(this).siblings('.control-group').find('input[type=hidden]');
  if(input.length>0){
    if(input.val().toString() !== $(this).data('value').toString()){
      input.val($(this).data('value')).trigger('change');
    }
  }
});
原文链接:/ruby/271439.html

猜你在找的Ruby相关文章