jquery:选择具有给定名称和值的输入

时间:2013-02-18 12:59:29

标签: jquery jquery-selectors

我想检查名为weekday的输入并且值为1.我尝试了下面这一行。它会检查所有工作日。

$('input[name = weekday], [value =1]').attr("checked", "checked");

5 个答案:

答案 0 :(得分:31)

请勿使用逗号在同一元素上应用这两个条件。

$('input[name=weekday][value=1]').attr("checked", "checked");

作为旁注,您应使用prop()代替attr()代替$('input[name=weekday][value=1]').prop("checked", true); 属性,如jQuery doc所示,并由@tyleha指出。

  

从jQuery 1.6开始,.attr()方法为属性返回undefined   尚未设定。检索和更改DOM属性,例如   选中,选中或禁用表单元素的状态,使用   .prop()方法。

您可以使用.prop( propertyName, value )设置checked属性,如下所示。

{{1}}

答案 1 :(得分:2)

不需要逗号。尝试:

 var checked = $('input[name = weekday][value =1]').attr("checked", "checked");

答案 2 :(得分:2)

试试这个

$('input[name=weekday][value=1]').attr("checked", "checked");

答案 3 :(得分:1)

逗号分隔多个选择器,因此您搜索名为“weekday”的任何类型的值为= 1的输入。

要在一个选择器中组合两个条件,只需将它们相互添加:

$('input[name=weekday][value=1]').attr("checked", "checked");

答案 4 :(得分: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');
 $("input[value='four'][name='some\\[thing\\]']").attr("checked",true);
alert('2'); 
 $("input[value='four'][name='some\\[thing\\]']").attr("checked",false);
alert('3');