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');
    }
  }
});

相关文章

validates:conclusion,:presence=>true,:inclusion=>{...
一、redis集群搭建redis3.0以前,提供了Sentinel工具来监控各...
分享一下我老师大神的人工智能教程。零基础!通俗易懂!风趣...
上一篇博文 ruby传参之引用类型 里边定义了一个方法名 mo...
一编程与编程语言 什么是编程语言? 能够被计算机所识别的表...
Ruby类和对象Ruby是一种完美的面向对象编程语言。面向对象编...