在JQuery中选中单选按钮

6

我需要以编程方式检查一个单选按钮并给出其值。该表单具有id,输入类型显然具有名称(但没有id)。到目前为止,我设法使以下代码工作:

$('input[name=my_name]:eq(1)').attr('checked', 'checked');

但我希望能够通过明确提供值来检查它。

6个回答

13

所以你想选择具有特定值的单选框:

$('input[name=my_name][value=123]').attr('checked', true); // or 'checked'

6
以下代码对我有效,如果我给单选按钮分配了一个ID:
<input type="radio" id="rd_male" name="gender" value="Male" />
<input type="radio" id="rd_female" name="gender" value="Female" />

$('#rd_male').prop('checked', true);

1

你应该使用 prop 而不是使用 attr。这更为推荐。

    $('input[name=my_name][value=123]').prop("checked",true)

2
如果您使用的是1.6版本之前的版本,则不适用。 - DNKROZ

1
为了以编程方式选择单选按钮,您可以调用jQuery触发器或 $(“.radioparentclass [value = radiovalue]”)[0] .click(); 。

小心使用此解决方案。我使用它来匹配两个单选按钮(一个用于桌面,一个用于移动设备),而我已经在其中一个上设置了点击处理程序。触发点击事件会导致无限循环的点击事件。对我来说,使用.prop()修复了这个问题。否则,在我看来,这是最简单的解决方案。 - Xandor

0
推荐使用 .click()
另一种只更改单选按钮属性或属性的解决方案
不会触发单选按钮事件,您必须手动调用单选按钮事件。
  $("#your_radio_option_ID_here").click()

0
$('input[name=field]:eq(1)').click();

注意:field = 单选按钮名称属性

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接