通过jquery获取组单选按钮选择的值

时间:2015-05-21 07:02:31

标签: javascript jquery html jquery-selectors radio-button

如何通过jQuery获取所选的单选按钮值?我试过了:

var selectedPlan = $("input[name=Plan[packageId]]:checked'").val();
alert(selectedPlan);

bBt没有工作。

<td style="vertical-align: top;">
    <input type="radio" value="1" name="Plan[packageId]">
    <lable>3 Games</lable><br>

    <input type="radio" value="2" name="Plan[packageId]">
    <lable>5 Games</lable><br>

    <input type="radio" value="3" name="Plan[packageId]">
    <lable>10 Games</lable><br>
</td>

这里是小提琴http://jsfiddle.net/vk3z45an/

2 个答案:

答案 0 :(得分:2)

您需要转义选择器的name属性中的[]个字符(或用引号括起来)并删除末尾的不匹配的撇号。试试这个:

var selectedPlan = $("input[name=Plan\\[packageId\\]]:checked").val();
alert(selectedPlan);

// alternatively:
// var selectedPlan = $("input[name='Plan[packageId]']:checked").val();

Updated fiddle

请注意,您在加载页面时正在运行代码,并且您的HTML默认情况下未选择任何广播。我在其中一个无线电中添加了checked属性,因此您可以看到它正常工作。此外,你的原始小提琴不包括jQuery所以我也添加了。最后,元素为label,而不是lable

答案 1 :(得分:2)

你需要转义CSS元字符或将它们包装在引号中以防止选择器破坏:

var selectedPlan = $("input[name='Plan[packageId]']:checked").val();

<强> Working Demo