我有两个单选按钮,希望发布所选按钮的值。如何使用jQuery获取值?
我可以得到所有这些:
$("form :radio")
我如何知道选择了哪一个?
我有两个单选按钮,希望发布所选按钮的值。如何使用jQuery获取值?
我可以得到所有这些:
$("form :radio")
我如何知道选择了哪一个?
当前回答
$("input:radio:checked").val();
其他回答
这个怎么样?
使用更改并获取无线电类型的值。。。
$('#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>
我编写了一个jQuery插件,用于设置和获取单选按钮值。它还尊重他们身上的“变化”事件。
(function ($) {
function changeRadioButton(element, value) {
var name = $(element).attr("name");
$("[type=radio][name=" + name + "]:checked").removeAttr("checked");
$("[type=radio][name=" + name + "][value=" + value + "]").attr("checked", "checked");
$("[type=radio][name=" + name + "]:checked").change();
}
function getRadioButton(element) {
var name = $(element).attr("name");
return $("[type=radio][name=" + name + "]:checked").attr("value");
}
var originalVal = $.fn.val;
$.fn.val = function(value) {
//is it a radio button? treat it differently.
if($(this).is("[type=radio]")) {
if (typeof value != 'undefined') {
//setter
changeRadioButton(this, value);
return $(this);
} else {
//getter
return getRadioButton(this);
}
} else {
//it wasn't a radio button - let's call the default val function.
if (typeof value != 'undefined') {
return originalVal.call(this, value);
} else {
return originalVal.call(this);
}
}
};
})(jQuery);
将代码放在任何位置以启用加载项。那就享受吧!它只是重写默认的val函数而不破坏任何东西。
你可以访问这个jsFiddle来尝试它的实际操作,看看它是如何工作的。
不停摆弄
获取所有收音机:
var radios = jQuery("input[type='radio']");
筛选以获取选中的
radios.filter(":checked")
要检索JavaScript数组中的所有单选按钮值,请使用以下jQuery代码:
var values = jQuery('input:checkbox:checked.group1').map(function () {
return this.value;
}).get();
使用此项:
value = $('input[name=button-name]:checked').val();