2016-12-17 48 views
0

我正在尝试使用制表符而不是check_box如何使用boolean和bootstrap导航标签?

这是我有什么...

<%= f.check_box :someday %> Someday

这是我在其更改为过程......

<ul class="nav nav-tabs"> 
    <li role="presentation" class="active"><a href="">Schedule</a></li> 
    <li role="presentation"><a href="">Someday</a></li> 
</ul> 

我怎么做,所以当Someday选项卡被点击时,它将被等同于检查并且Schedule将等同于未选中?

Bootstrap已经与项目集成。

+0

我不认为这基本上是一个好主意。我明白你想做什么,但我会保留复选框(但隐藏它)并使用一些JS/jQuery来读出值并相应地调整标签。当然,手动更改选项卡也应该更新复选框的值。 –

回答

0

在你看来:

<li role="presentation"><a href="" id="someday_link">Someday</a></li> 
<%= f.hidden_field :someday, value: "0", id: "someday_value" %> 

在使用Javascript/jQuery的:

$('#someday_link').on("click", function(e) { 
    e.preventDefault(); 
    var checkbox_value = $('#someday_value').val(); 
    if (checkbox_value == "1") { 
    $('#someday_value').val("0") 
    } else { 
    $('#someday_value').val("1") 
    } 
}); 
+0

谢谢!但是当我点击“某天”时,页面只会刷新。我该怎么处理'

  • Schedule
  • '? –

    +0

    您可能需要临时使用'text_field'而不是'hidden_​​field'来查看javascript是否正常工作。 – luckyruby