我在我的音乐播放器(测试网站)上有一个小脚本,它应该允许用户既可以取消选中(清除)所有复选框,也可以全选(全选)。该球员位于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) –