我在我的音樂播放器(測試網站)上有一個小腳本,它應該允許用戶既可以取消選中(清除)所有複選框,也可以全選(全選)。該球員位於HERE。這是我的內部的JavaScript:JavaScript全選按鈕不起作用
<script>
function uncheckAll() {
$("input[type='checkbox']:checked").prop("checked", false)
}
function checkAll() {
$("input[type='checkbox']:checked").prop("checked", true)
}
</script>
我輸入:
<input type="button" onclick="uncheckAll()" value="Clear"/><input class="check" type="button" onclick="checkAll()" value="Select All"/>
清除按鈕的功能良好。全選按鈕不起作用。
我想知道問題是我的內部Javascript還是可能與玩家的自然默認打開並檢查所有框的事實? (選擇全部按鈕的目的只是爲了在用戶決定聽到所有歌曲時將檢查返回到其自然位置,畢竟,而不是幾個選擇。我意識到用戶可以刷新頁面,但我認爲Select All按鈕更方便用戶使用
(播放器的JavaScript,ttw-music-player.js,它的位置鏈接位於頁面源頭標籤內。)處理複選框的部分是:
markup = {
listItem:'<li class="track">' +
'<span class="title"></span>' +
'<span class="duration"></span>' +
'<span class="rating"></span>' +
'<a href="#" class="buy not-active" target="_blank"></a>' +
'<input class="cb" type="checkbox" checked="true">' +
'</li>',
ratingBar:'<span class="rating-level rating-bar"></span>'
};
和
function playlistNext() {
$cbs = $(".cb");
var index = current;
do {
index = (index + 1 < myPlaylist.length) ? index + 1 : 0;
} while (!$cbs.eq(index).prop("checked"));
playlistAdvance(index);
}
任何人都可以幫助我確定爲什麼選擇全部(checkAll)函數不起作用,而清除(uncheckAll)函數呢?
當調用checkAll()函數時,它無法在checked:true中找到DOM中的任何輸入。因此,像這樣運行它:function checkAll(){ $(「input [type ='checkbox']」)。prop(「checked」,true) –