如何编程检查引导按钮组(单选)按钮

问题描述:

http://jsfiddle.net/rphpbqp9/如何编程检查引导按钮组(单选)按钮

<div class="btn-group" data-toggle="buttons"> 
    <label class="btn btn-sm btn-primary success active"> 
     <input type="radio" name="options" id="optionFalse" checked />false 
    </label> 
    <label class="btn btn-sm btn-primary danger"> 
     <input type="radio" name="options" id="optionTrue" />true 
    </label> 
</div> 

$('#optionTrue').button('toggle'); 

我读过更多问题的答案,但他们没有工作。 按钮切换不起作用,我试图添加/删除“活动”类,没有效果。我使用的是1.10 jQuery和3.1 Bootstrap。这应该很简单,我把头发拉出来!

button()需要与类btn的元素被称为...

$('#optionTrue').closest('.btn').button('toggle'); 

这将正常切换的按钮,并更新每个输入适当的检查属性...

Fiddle

+0

你是对的,先生!我是否应该将标识放在标签上,那么我不必调用“最接近”的标签? – 2014-08-31 06:43:44

+0

我希望我早些时候问过这个问题,现在我会留下更多的头发。 – 2014-08-31 06:44:08

+0

我刚刚尝试过,如果我将ID级别提高一级,那么它就可以工作,那么我不必使用最接近的http://jsfiddle.net/6h3c5axn/1/,还有一件事:检查呼叫不起作用然后。你可以挖掘孩子,但要去输入字段。 – 2014-08-31 06:46:46

引导文档(3.2)并没有使这个更明显,但这是我找到的用于设置代码中单选按钮初始状态的最简单的方法。

<div class="btn-group" data-toggle="buttons"> 
    <label id="optionFalse" class="btn btn-primary"> 
     <input type="radio" name="options" /> false 
    </label> 
    <label id="optionTrue" class="btn btn-primary "> 
     <input type="radio" name="options" /> true 
    </label> 
</div> 

if (initTrue) { 
    $('#optionTrue').button('toggle'); 
} 
else { 
    $('#optionFalse').button('toggle'); 
} 

在这个问题上阅读几十个帖子后,似乎这些都是混乱的一般要点:

  • “切换”的方法并不状态之间(关>切换上 - >关闭),只是将参考按钮设置为“on”并将所有其他按钮设置为“off”。
  • 引用的id需要在'label'上,而不是'input'。
+0

该标识是否在标签上?这是多么的怪异? – 2014-12-23 21:51:28

http://jsfiddle.net/y5qccerz/

document.querySelector(".btn-group input[id='optionTrue']").checked = true;