我想檢查命名爲weekday並具有值= 1的輸入。我嘗試了下面的行。它檢查所有工作日。jquery:選擇具有給定名稱和值的輸入
$('input[name = weekday], [value =1]').attr("checked", "checked");
我想檢查命名爲weekday並具有值= 1的輸入。我嘗試了下面的行。它檢查所有工作日。jquery:選擇具有給定名稱和值的輸入
$('input[name = weekday], [value =1]').attr("checked", "checked");
請勿使用逗號將兩個條件應用於同一元素。
$('input[name=weekday][value=1]').attr("checked", "checked");
作爲一個側面說明,你應該使用prop()而不是attr()
爲性能由jQuery doc建議和@tyleha指出。
從jQuery 1.6開始,對於尚未設置的屬性 ,.attr()方法返回undefined。要檢索和更改DOM屬性(如 )表單元素的選中狀態,選中狀態或禁用狀態,請使用 .prop()方法。
您可以使用.prop(propertyName, value)來設置checked屬性,如下所示。
$('input[name=weekday][value=1]').prop("checked", true);
不需要逗號。嘗試:
var checked = $('input[name = weekday][value =1]').attr("checked", "checked");
與此
$('input[name=weekday][value=1]').attr("checked", "checked");
逗號分隔多個選擇嘗試,所以你要搜索命名爲「平日」 投入與價值= 1
任何類型的元素要在一個選擇器中結合這兩個標準,只需將它們相加即可:
$('input[name=weekday][value=1]').attr("checked", "checked");
<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');
您應該(需要?)使用'.prop'而不是'.attr'來檢查這些DOM屬性:http://api.jquery.com/attr/ 所以只需要'.prop(「檢查「)'應該做的訣竅 – tyleha 2014-12-31 18:36:42
謝謝@tyleha,你是正確的使用prop()在這裏。但.prop(「檢查」)將獲得屬性的值而不是設置。設置屬性.prop(「checked」,true);將會被使用。 – Adil 2015-01-01 04:26:01