我有两个单选按钮,希望发布所选按钮的值。如何使用jQuery获取值?
我可以得到所有这些:
$("form :radio")
我如何知道选择了哪一个?
我有两个单选按钮,希望发布所选按钮的值。如何使用jQuery获取值?
我可以得到所有这些:
$("form :radio")
我如何知道选择了哪一个?
当前回答
在JSF生成的单选按钮(使用<h:selectOneRadio>标记)中,可以执行以下操作:
radiobuttonvalue = jQuery("input[name='form_id\:radiobutton_id']:checked").val();
其中selectOneRadio ID是radiobutton_ID,表单ID是form_ID。
如图所示,请务必使用name而不是id,因为jQuery使用这个属性(名称由JSF自动生成,类似于控件id)。
其他回答
这应该是有效的:
$("input[name='radioName']:checked").val()
注意输入周围使用的“”:已检查,而不是像Peter J的解决方案那样的“”
试试这个。这对我有用
$('input[type="radio"][name="name"]:checked').val();
如果您已经引用了单选按钮组,例如:
var myRadio = $("input[name=myRadio]");
使用filter()函数,而不是find()。(find()用于查找子元素/子元素,而filter()用于搜索所选内容中的顶级元素。)
var checkedValue = myRadio.filter(":checked").val();
注意:这个答案最初是在纠正另一个建议使用find()的答案,但后来似乎有所改变。find()对于已经引用了容器元素但没有引用单选按钮的情况仍然有用,例如:
var form = $("#mainForm");
...
var checkedValue = form.find("input[name=myRadio]:checked").val();
下面是我如何填写表格并处理已检查的收音机的获取。
使用名为myForm的表单:
<form id='myForm'>
<input type='radio' name='radio1' class='radio1' value='val1' />
<input type='radio' name='radio1' class='radio1' value='val2' />
...
</form>
从表单中获取值:
$('#myForm .radio1:checked').val();
如果您不发布表单,我会通过以下方式进一步简化:
<input type='radio' class='radio1' value='val1' />
<input type='radio' class='radio1' value='val2' />
然后获取检查值变为:
$('.radio1:checked').val();
在输入上有类名可以让我轻松地设置输入的样式。。。
演示:https://jsfiddle.net/ipsjolly/xygr065w/
$(函数){$(“#submit”).click(function(){alert($('input:radio:checked').val());});});<script src=“https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js“></script><表><tr><td>促销活动</td><td><input type=“radio”name=“q12_3”value=“1”>1</td><td><input type=“radio”name=“q12_3”value=“2”>2</td><td><input type=“radio”name=“q12_3”value=“3”>3</td><td><input type=“radio”name=“q12_3”value=“4”>4</td><td><input type=“radio”name=“q12_3”value=“5”>5</td></tr></table><button id=“submit”>提交</button>