我試圖檢查所有元素如果複選框輸入類型,我試過不同的解決方案,但它沒有工作,我知道這很簡單,但我不知道什麼是錯的我的代碼:如何檢查所有複選框使用jQuery
<ul class="items">
<li class="item checkall">
<label>
<input type="checkbox" name="item[]" id="checkAll">
<span></span>
<p>Check All Items</p>
</label>
</li>
<li class="item">
<label>
<input type="checkbox" name="item[]" id="checkbox" value="1">
<span></span>
<p>Learn HTML5.1</p>
</label>
</li>
<li class="item">
<label>
<input type="checkbox" name="item[]" id="checkbox" value="2">
<span></span>
<p>Learn PHP7</p>
</label>
</li>
<li class="item">
<label>
<input type="checkbox" name="item[]" id="checkbox" value="4">
<span></span>
<p>Program a Website</p>
</label>
</li>
</ul>
的jQuery:
$(".checkall").click(function() {
$('input:checkbox').not(this).prop('checked', this.checked);
});
首先使用class而不是id。 id必須是唯一的,並使用'#id'選擇一個id和'.class'來選擇一個類。如果你看起來更好,還有很多像你這樣的其他問題http://stackoverflow.com/questions/18537609/jquery-checkbox-check-all; http://stackoverflow.com/questions/15504643/check-uncheck-all-checkboxes-with-another-single-checkbox-use-jquery – Alexis
是的。這很簡單。所以,我的問題是:如果你想檢查所有複選框,爲什麼你需要'not(this)'語句? –
使用'change'事件而不是'click' – Satpal