我有两个单选按钮,希望发布所选按钮的值。如何使用jQuery获取值?

我可以得到所有这些:

$("form :radio")

我如何知道选择了哪一个?


当前回答

此解决方案不需要jQuery。

const RADIO_NAME = "radioName";
const radios = Array.from(document.getElementsByName(RADIO_NAME));
const checkedRadio = radios.filter(e=>e.checked);

这使用jQuery:

const radios = Array.from($(`[name=${RADIO_NAME}`));
const checkedRadio = radios.filter(e=>e.checked);

jQuery添加了这里不需要的额外抽象层。

您还可以使用:

const radios = Array.from(document.querySelectorAll(`[name=${RADIO_NAME}`));
const checkedRadio = radios.filter(e=>e.checked)[0];

但getElementsByName足够简单明了。

其他回答

演示: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>

使用此项:

value = $('input[name=button-name]:checked').val();

在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)。

要获取使用类的所选收音机的值,请执行以下操作:

$('.class:checked').val()

使用此。。

$("#myform input[type='radio']:checked").val();