jquery一键控制checkbox全选、反选或全不选

网络编程 2025-03-29 12:49www.168986.cn编程入门

JQuery轻松实现复选框的全选、反选与取消全选功能

在网页开发中,我们经常需要处理复选框的全选、反选和取消全选功能。使用jQuery可以简化这些操作。本文将详细介绍如何使用jQuery来实现这些功能。

一、全选功能

在HTML中,我们有一组复选框以及一个全选复选框。当点击全选复选框时,我们希望所有的复选框都被选中或取消选中。

jQuery中的`.change()`函数可以帮助我们监听复选框的变化,`.prop()`函数则可以设置或获取复选框的`checked`属性。

二、反选功能

当点击反选复选框时,我们希望实现所有复选框的选中状态反转,即选中的变为未选中,未选中的变为选中。这需要遍历所有的复选框,并改变它们的`checked`属性。

三、一键控制全选、反选、全不选

我们还有一个特殊的复选框,当点击它时,根据它的状态,我们希望实现全选、反选或取消全选的功能。这需要判断已选中的复选框数量,然后决定是执行全选、反选还是取消全选操作。

HTML结构如下:

```html

西瓜

芒果


全选

反选

全选/反选/全不选

```

以下是对应的jQuery代码:

```javascript

// 全选

$('allChecked').change(function(){

$('box').children(':checkbox').prop('checked', $(this).is(':checked'));

});

// 反选

$('invertChecked').change(function(){

$('box').children(':checkbox').each(function(){

$(this).prop('checked', !$(this).is(':checked')); // 使用!来反转状态

});

});

// 一键控制全选、反选、全不选

$('orChecked').change(function(){

var isChecked = $(this).is(':checked'); // 判断该复选框是否被选中

var box = $('box').children(':checkbox'); // 获取所有复选框集合

if (isChecked) { // 如果被选中,则执行特殊操作

if (box.length == box.filter(':checked').length) { // 如果所有复选框都被选中,执行全选操作

box.prop('checked', true); // 所有复选框选中状态为true(即全部选中) } else { // 否则执行反选操作 box.each(function(){ $(this).prop('checked', !$(this).is(':checked')); // 反选所有复选框的选中状态 }); } else { // 如果控制键被取消选中,取消所有复选框的选中状态 box.prop('checked', false); } }); ``` 使用jQuery可以方便地实现复选框的全选、反选和取消全选功能。以上代码具有一定的参考价值,希望对学习jQuery的小伙伴们有所帮助。欢迎大家多多支持狼蚁SEO,我们会持续分享更多实用的技术文章。

上一篇:微信小程序自定义底部弹出框 下一篇:没有了

Copyright © 2016-2025 www.168986.cn 狼蚁网络 版权所有 Power by