jQuery按属性名称和值查找表单元素?

时间:2011-05-27 01:21:23

标签: jquery forms

我正在尝试检查单选按钮,但我所拥有的所有元素都是name属性和元素值。

我需要一些方法来检查正确的广播,其中name =“accounts \ ['+ i +'\] \ [account_status \] \ [selected \]”和“#form1”中的value =“current”。

我有下面的代码,但它会检查最后一个单选按钮。

$('#form1 input[name="accounts\\['+i+'\\]\\[account_status\\]\\[selected\\]"]').attr('checked', true);

由于

2 个答案:

答案 0 :(得分:15)

您似乎遗漏了value部分。正因为如此,它试图检查所有这些,无论价值如何。由于一次只能检查一组中的一个单选按钮,因此最后只检查最后一个。

在最后添加值。

input[name='something'][value='something']

http://jsfiddle.net/KsJCP/

答案 1 :(得分:1)

查看此选择的更好方法如下所示:

<input type="radio" name="some[thing]" value="one">
<input type="radio" name="some[thing]" value="two">
<input type="radio" name="some[thing]" value="three">
<input type="radio" name="some[thing]" value="four">
<input type="radio" name="some[thing]" value="five">
<input type="radio" name="some[thing]" value="six">

alert('1'); // All are unchecked
$("input[value='four'][name='some\\[thing\\]']").attr("checked",true);
alert('2'); // 4th is checked
$("input[value='four'][name='some\\[thing\\]']").attr("checked",false);
alert('3'); // 4th is unchecked