22

我想在 Bootstrap 中设置一个选定的按钮btn-group

<div class="btn-toolbar">
 <div class="btn-group">
  <button type="button" class="btn btn-default">5</button>
  <button type="button" class="btn btn-default">6</button>
  <button type="button" class="btn btn-default">7</button>
 </div>
 <div class="btn-group">
  <button type="button" class="btn btn-default">8</button>
 </div>
</div>

如何预先选择选项 5?这个答案表明我可以active向按钮添加类,它最初确实可以工作,但是点击其他按钮并不会像我预期的那样停用该按钮。

这是一个小提琴:http ://bootply.com/90490

这是另一个active应用类的小提琴,说明了为什么它不是正确的解决方案: http: //bootply.com/90491 - 单击任何其他按钮,按钮 5 仍然保持活动状态。

4

3 回答 3

17

假设您希望每个按钮组有一个选择,并且您已经包含了引导 JavaScript 文件,那么以下应该可以工作。

标记

<div class="btn-toolbar">
    <div class="btn-group" data-toggle="buttons">
        <label class="btn btn-default"><input type="radio" name="options" id="option5">5</label>
        <label class="btn btn-default"><input type="radio" name="options" id="option6">6</label>
        <label class="btn btn-default"><input type="radio" name="options" id="option7">7</label>
    </div>
    <div class="btn-group" data-toggle="buttons">
        <label class="btn btn-default"><input type="radio" name="options" id="option8">8</label>
    </div>
</div>

JavaScript

$(document).ready(function() {
    $(".btn").first().button("toggle");
});

例如,如果你想预先切换第三个按钮,你可以像这样使用 slice 函数:

$(".btn").slice(2,3).button("toggle");

或者,您可以为按钮分配标识符。

这是我的小提琴:http ://bootply.com/90501

于 2013-10-28T11:45:54.143 回答
9

我正在寻找预切换按钮的答案并找到了这个 SO。它们似乎都有点困难,我找到了一个指向BootStrap 4 复选框按钮的链接,它给了我一些关于 BootStrap 3 如何工作的提示。我认为我的解决方案更简单,因为它可以预先写在 html 中。解决方案如下:

<div class="btn-group" data-toggle="buttons">
    <label class="btn btn-default active">
        <input type="radio" checked>5
    </label>
    <label class="btn btn-default">
        <input type="radio">6
    </label>
    <label class="btn btn-default">
        <input type="radio">7
    </label>
</div>

正如我所说,这是由 BootStrap 4 文档提示的,但适用于 BootStrap 3。重要的部分是:

  1. 在div 中data-toggle="buttons"btn-group
  2. active标签上的类别 5。
  3. 对5 checked<input type="radio">

我希望这对其他人有帮助。

于 2016-09-22T10:53:03.627 回答
0

您可以从第一个按钮的输入标签中删除选中,并在条件下添加活动类。例如:

<div class="btn-group btn-group-toggle" data-toggle="buttons">
    <label class="btn btn-secondary" [ngClass]="{'active': splitOption=='equal'}" >
      <input type="radio" name="options" id="option1" autocomplete="off"  > =
     </label>
</div>

于 2020-05-24T19:51:27.753 回答