如何检查与jQuery单选按钮?

我尝试用jQuery检查一个单选按钮。 这是我的代码:

<form> <div id='type'> <input type='radio' id='radio_1' name='type' value='1' /> <input type='radio' id='radio_2' name='type' value='2' /> <input type='radio' id='radio_3' name='type' value='3' /> </div> </form> 

而JavaScript:

 jQuery("#radio_1").attr('checked', true); 

不起作用:

 jQuery("input[value='1']").attr('checked', true); 

不起作用:

 jQuery('input:radio[name="type"]').filter('[value="1"]').attr('checked', true); 

不起作用:

你有另一个想法吗? 我错过了什么?

对于(<)1.6之前的jQuery版本,请使用:

 $("#radio_1").attr('checked', 'checked'); 

对于等于或大于(> =)1.6的版本,请使用:

 $("#radio_1").prop("checked", true) 

尝试这个。

在这个例子中,我使用它的输入名称和值来定位它

 $("input[name=background][value='some value']").prop("checked",true); 

有用的知识:在多词价值的情况下,它也会因为撇号而起作用。

还有一个函数prop()是在jQuery 1.6中添加的,它的作用相同。

 $("#radio_1").prop("checked", true); 

简单易读的选项:

 $("#radio_1").is(":checked") 

它返回true或false,所以你可以在“if”语句中使用它。

尝试这个。

要使用Value来检查单选按钮,使用这个。

 $('input[name=type][value=2]').attr('checked', true); 

要么

 $('input[name=type][value=2]').attr('checked', 'checked'); 

要么

 $('input[name=type][value=2]').prop('checked', 'checked'); 

要使用ID检查单选按钮,请使用此选项。

 $('#radio_1').attr('checked','checked'); 

要么

 $('#radio_1').prop('checked','checked'); 

$.prop方式更好:

 $(document).ready(function () { $("#radio_1").prop('checked', true); }); 

你可以像下面这样测试它:

 $(document).ready(function () { $("#radio_1, #radio_2", "#radio_3").change(function () { if ($("#radio_1").is(":checked")) { $('#div1').show(); } else if ($("#radio_2").is(":checked")) { $('#div2').show(); } else $('#div3').show(); }); }); 

你必须做

 jQuery("#radio_1").attr('checked', 'checked'); 

这是HTML属性

如果属性name不起作用,请不要忘记该id仍然存在。 这个答案适用于那些想要在这里定位身份的人。

 $('input[id=element_id][value=element_value]').prop("checked",true); 

因为属性name不适用于我。 确保你没有用双/单引号包围idname

干杯!

尝试这个:

 $("input[name=type]").val(['1']); 

http://jsfiddle.net/nwo706xw/

 $("input[name=inputname]:radio").click(function() { if($(this).attr("value")=="yes") { $(".inputclassname").show(); } if($(this).attr("value")=="no") { $(".inputclassname").hide(); } }); 

是的,它对我来说就像一个方法:

 $("#radio_1").attr('checked', 'checked'); 

尝试这个

 var isChecked = $("#radio_1")[0].checked; 

获得价值:

 $("[name='type'][checked]").attr("value"); 

设定值:

 $(this).attr({"checked":true}).prop({"checked":true}); 

单选按钮点击添加attr选中:

 $("[name='type']").click(function(){ $("[name='type']").removeAttr("checked"); $(this).attr({"checked":true}).prop({"checked":true}); }); 

我们应该想告诉它是一个radio按钮。所以请使用以下代码尝试。

 $("input[type='radio'][name='userRadionButtonName']").prop('checked', true); 

我有一些相关的例子要增强,如果我想添加一个新的条件,可以说,如果我想要的颜色方案隐藏后,我点击项目状态值,除了摊铺机和铺路板。

例子在这里:

 $(function () { $('#CostAnalysis input[type=radio]').click(function () { var value = $(this).val(); if (value == "Supply & Lay") { $('#ul-suplay').empty(); $('#ul-suplay').append('<fieldset data-role="controlgroup"> \ 

http://jsfiddle.net/m7hg2p94/4/

我使用这个代码:

我很抱歉英文。

 var $j = jQuery.noConflict(); $j(function() { // add handler $j('#radio-1, #radio-2').click(function(){ // find all checked and cancel checked $j('input:radio:checked').prop('checked', false); // this radio add cheked $j(this).prop('checked', true); }); }); 
 <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <fieldset class="section"> <legend>Radio buttons</legend> <label> <input type="radio" id="radio-1" checked> Option one is this and that&mdash;be sure to include why it's great </label> <br> <label> <input type="radio" id="radio-2"> Option two can be something else </label> </fieldset> 

试试这个例子

 <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <form id="myForm"> <input type="radio" name="radio" value="first"/> 1 <br/> <input type="radio" name="radio" value="second"/> 2 <br/> </form> <script> $(document).ready(function () { $('#myForm').on('click', function () { var value = $("[name=radio]:checked").val(); alert(value); }) }); </script> 

尝试这个

  $("input:checked", "#radioButton").val() 

如果选中,则返回True否则返回False

 jQuery v1.10.1 

有时上面的解决方案不起作用,那么你可以尝试下面的方法:

 jQuery.uniform.update(jQuery("#yourElementID").attr('checked',true)); jQuery.uniform.update(jQuery("#yourElementID").attr('checked',false)); 

另一种可以尝试的方法是:

 jQuery("input:radio[name=yourElementName]:nth(0)").attr('checked',true); 

我刚刚有一个类似的问题,一个简单的解决方案是只使用:

 .click() 

任何其他解决方案将工作,如果你刷新收音机后调用功能。

 function rbcitiSelction(e) { debugger $('#trpersonalemail').hide(); $('#trcitiemail').show(); } function rbpersSelction(e) { var personalEmail = $(e).val(); $('#trpersonalemail').show(); $('#trcitiemail').hide(); } $(function() { $("#citiEmail").prop("checked", true) }); 

为了防止任何人在使用jQuery UI的时候试图实现这一点,你还需要刷新UI复选框对象以反映更新的值:

 $("#option2").prop("checked", true); // Check id option2 $("input[name='radio_options']").button("refresh"); // Refresh button set 

尝试这个

 $(document).ready(function(){ $("input[name='type']:radio").change(function(){ if($(this).val() == '1') { // do something } else if($(this).val() == '2') { // do something } else if($(this).val() == '3') { // do something } }); }); 
 $("#radio_1").attr('checked', true); //or $("#radio_1").attr('checked', 'checked'); 

尝试这个:

 $(document).ready(function(){ $("#Id").prop("checked", true).checkboxradio('refresh'); }); 
Interesting Posts