如何检查与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
不适用于我。 确保你没有用双/单引号包围id
和name
。
干杯!
$("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"> \
我使用这个代码:
我很抱歉英文。
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—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'); });