单击时从bootstrap data-toggle =“button”获取值

时间:2016-03-17 22:34:14

标签: jquery forms twitter-bootstrap

我无法使用引导按钮组获取所选单选按钮的值

<form action="cart.php" method="post" id="addtocart">
    <div id="select1" class="product-options " data-toggle="buttons">
        <label class="btn btn-default"><input type="radio" name="option1" value="1"> 1 </label>
        <label class="btn btn-default"><input type="radio" name="option1" value="2"> 2 </label>
        <label class="btn btn-default"><input type="radio" name="option1" value="3"> 3 </label>
    </div>
</form>

选择后,我需要获取所选值。我知道我应该能够得到这样的价值:

$("#select1").click(function() {
    var option1 = $("#select1 label.active input").val();
});

或者

$("#select1").click(function() {
    var option1 = $("#select1 input:radio:checked").val();
});

但是,第一次单击时的两个变体都返回“undefinied”,第二次单击时返回“之前”选择的值。如何在第一次点击时获得所选值?

2 个答案:

答案 0 :(得分:3)

您需要挂接广播本身的change事件,而不是父click的{​​{1}}。试试这个:

div

Working example

答案 1 :(得分:0)

选择的价值可以通过以下方式获得: $("#select1 input:radio:checked").first().val();

请注意.first()添加。