选中/取消选中列表中的所有复选框

Select/unselect all checkboxes in a list

本文关键字:复选框 列表 取消 选中      更新时间:2023-09-26

我有一个列表(id:lstName),我想有一个与列表框的链接(即全选)。当用户单击全选链接时,列表中的所有项目都将被选中,同时链接的文本将从"全选"更改为"取消全选",反之亦然。

由于我的页面中还有另外三个列表框,有没有什么方法可以让我有一个通用的函数,在这个函数中我可以传递列表框id和链接id,它将完成上述任务=

请帮忙,我对javascript和jquery一无所知。

$(".select-all").click(function() {
            $('#IstName select option').prop('selected',true);
            $(this).addClass("selected");
            $(this).text("Unselect All");
    }) ;
 $(".selected").click(function() {
            $('#IstName select option').prop('selected',false);
            $(this).removeClass("selected");
            $(this).text("Select All");
    }) ;

这应该行得通。

您可以执行类似的操作

<div>
    <button>Toggle</button>
    <a href="javascript:check_uncheck(1)">Select All</a>
    <a href="javascript:check_uncheck(0)" style="display:none;">Unselect All</a>
</div>
<input type="checkbox" class="selection">
<input type="checkbox" class="selection">
<input type="checkbox" class="selection">
<script>
$("button").click( function(){
    $("a").toggle();
});
function check_uncheck(is_check){
    $.each( $('.selection'), function ( index, value ) { 
        if ( is_check ) { 
            $(value).attr('checked', true); 
        } 
        else{ 
            $(value).attr('checked', false); 
        } 
    });
}
</script>