自制jQuery 复选框全选与反选插件
(function ($) {
//复选框全选
$.fn.checkAll = function (options) {
var defaults = {
chName:"checkName", //复选框name属性
callBack:null //回调函数
},
$obj = $(this), //引用对象
$items = $("input:checkbox[name=" + options.chName + "]"), //所有name匹配的复选框
checkedItem = 0; //选中的复选框个数
options = $.extend(defaults, options);
//链式调用
//链式调用
return this.each(function(){
$items.click(function () {
//如果选中总数等于总数
//全选打勾,label文字变成“全不选”
//否则,不打勾
if ($items.length === $items.filter(":checked").length) {
$obj.prop("checked", true);
$obj.next("label") && $obj.next("label").text("全不选");
} else {
$obj.prop("checked", false);
$obj.next("label") && $obj.next("label").text("全 选");
}
//执行回调函数
if (typeof options.callBack === "function") {
options.callBack();
}
});
$obj.click(function () {
//判断该框的状态
//等于就取消所有选中,label文字变成“全选”
//否则,选中所有
if (this.checked) {
$items.prop("checked", true);
$obj.next("label") && $obj.next("label").text("全不选") ;
} else {
$items.prop("checked", false);
$obj.next("label") && $obj.next("label").text("全选");
}
if (typeof options.callBack === "function") {
options.callBack();
}
});
});
};
})(jQuery);
标签:
jQuery 复选框全选与反选
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】博客园2025新款「AI繁忙」系列T恤上架,前往周边小店选购
【推荐】凌霞软件回馈社区,携手博客园推出1Panel与Halo联合会员
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Hangfire Redis 实现秒级定时任务,使用 CQRS 实现动态执行代码
· Android编译时动态插入代码原理与实践
· 解锁.NET 9性能优化黑科技:从内存管理到Web性能的最全指南
· 通过一个DEMO理解MCP(模型上下文协议)的生命周期
· MySQL下200GB大表备份,利用传输表空间解决停服发版表备份问题
· 工良出品 | 长文讲解 MCP 和案例实战
· 多年后再做Web开发,AI帮大忙
· 国产的 Java Solon v3.2.0 发布(央企信创的优选)
· centos停服,迁移centos7.3系统到新搭建的openEuler
· 记一次 .NET某旅行社酒店管理系统 卡死分析