我有两个单选按钮,希望发布所选按钮的值。如何使用jQuery获取值?
我可以得到所有这些:
$("form :radio")
我如何知道选择了哪一个?
我有两个单选按钮,希望发布所选按钮的值。如何使用jQuery获取值?
我可以得到所有这些:
$("form :radio")
我如何知道选择了哪一个?
当前回答
此外,检查用户是否未选择任何内容。
var radioanswer = 'none';
if ($('input[name=myRadio]:checked').val() != null) {
radioanswer = $('input[name=myRadio]:checked').val();
}
其他回答
我发布了一个库来帮助解决这个问题。实际上,提取所有可能的输入值,但也包括选中的单选按钮。你可以在https://github.com/mazondo/formalizedata
它将为您提供一个包含答案的js对象,因此表单如下:
<form>
<input type="radio" name"favorite-color" value="blue" checked> Blue
<input type="radio" name="favorite-color" value="red"> Red
</form>
将给您:
$("form").formalizeData()
{
"favorite-color" : "blue"
}
此解决方案不需要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足够简单明了。
这个怎么样?
使用更改并获取无线电类型的值。。。
$('#my radio form').on('change',function(){console.log($('[type=“radio”]:checked').val());});<script src=“https://cdnjs.cloudflare.com/ajax/libs/jquery/3.0.0/jquery.min.js“></script><form id=“my radio form”><input type=“radio”name=“input radio”value=“a”/>a<input type=“radio”name=“input radio”value=“b”/>b<input type=“radio”name=“input radio”value=“c”/>c<input type=“radio”name=“input radio”value=“d”/>d</form>
这很好
$('input[type="radio"][class="className"]:checked').val()
工作演示
:checked选择器适用于复选框、单选按钮和选择元素。仅对于select元素,请使用:selected选择器。
API:选中的选择器
此外,检查用户是否未选择任何内容。
var radioanswer = 'none';
if ($('input[name=myRadio]:checked').val() != null) {
radioanswer = $('input[name=myRadio]:checked').val();
}