JQuery - 按值查找单选按钮

Posted

技术标签:

【中文标题】JQuery - 按值查找单选按钮【英文标题】:JQuery - find a radio button by value 【发布时间】:2011-01-11 12:36:36 【问题描述】:

我将如何使用 JQuery 根据其值查找单选按钮?

【问题讨论】:

【参考方案1】:

这也可以实现:

$('input[type="radio"][value="aaa"]').val();

这将选择值为 aaa 的收音机


.filter()方法:

var radio =  $('input[type="radio"]').filter(function()
                       return this.value === 'aaa';
                      ).val();

【讨论】:

这实际上会选择所有单选按钮并将其更改其值aaa 然后返回'aaa'【参考方案2】:

完整的选择器如下所示:

bool shipToBilling = $("[name=ShipToBillingAddress][value=True]")

鉴于您可能有不止一个这样的单选按钮组

<input name="ShipToBillingAddress" type="radio" value="True" checked="checked">
<input name="ShipToBillingAddress" type="radio" value="False">

<input name="SomethingElse" type="radio" value="True" checked="checked">
<input name="SomethingElse" type="radio" value="False">

使用这样的 ID 选择器(下一个示例)是不好的,因为您不应该有多个具有相同 ID 的元素。我假设发现这个问题的人已经知道这很糟糕。

$("#DidYouEnjoyTheMovie:radio[value=yes]")

关于:radio的以下内容可能感兴趣也可能不感兴趣

因为 :radio 是一个 jQuery 扩展而不是 CSS 的一部分 规范,使用 :radio 的查询不能利用 本机 DOM querySelectorAll() 提供的性能提升 方法。为了在现代浏览器中获得更好的性能,请使用 [type="radio"] 而是。

【讨论】:

【参考方案3】:

假设你在 html 中有这样的东西:

<fieldset>
    <input type="radio" name="UI_opt" value="alerter" checked> Alerter<br/>
    <input type="radio" name="UI_opt" value="printer"> Printer<br/>
    <input type="radio" name="UI_opt" value="consoler"> Consoler<br/>
</fieldset>

那么这种事情就行了。

$("fieldset input[name='UI_opt'][checked]").val()

【讨论】:

【参考方案4】:

我使用的是 jQuery 1.6,但这对我不起作用:$(":radio[value=foobar]").attr('checked',true);

相反,我使用的是:$('[value="foobar"]').attr('checked',true); 而且效果很好。

我使用的实际代码首先清除无线电并使用prop 而不是attr

$('[name=menuRadio]').prop('checked',false);

$('[name=menuRadio][value="Bar Menu"]').prop('checked',true);

【讨论】:

这是一个已修复的错误吗?还是应该在值周围加上引号?【参考方案5】:

试试这个:

$(":radio[value=foobar]")

这将选择属性为value="foobar"的所有单选按钮。

【讨论】:

谢谢我这样使用它:jQuery.each(cookieObj, function(i, val) $(":radio[value=val]").attr('checked',true); ); @test:试试这个:function(i, val) $(":radio[value="+val+"]").attr('checked',true); @Gumbo 如果我们给这个函数一个名字,我们可以这样称呼它吗?:$checkedRadioValues = findChecked("value");

以上是关于JQuery - 按值查找单选按钮的主要内容,如果未能解决你的问题,请参考以下文章

jQuery如何获取选中单选按钮radio的值

样式单选按钮(jquery?)

如何用jquery美化单选按钮和复选框

如何在 jQuery 中重置单选按钮以便不检查任何单选按钮

如何用Jquery控制单选按钮点击否然后隐藏其他文本框

验证动态单选按钮jQuery