单击时触发效果:

如果有一个没有选中把全选的勾去了,如果select所有的都选中了,那就把全选勾上



html里:

<div class="row cl">

   <label class="form-label col-xs-4 col-sm-2 "><span class="c-red">*</span>可购买者等级列表:</label>

   <div class="formControls col-xs-8 col-sm-9 skin-minimal checktop">
<input type="checkbox" id="purchaser_levelAll" onclick="checkAll(this,'purchaser_level_select')" value="">
<span class="mr-5">All</span>
@foreach($memberLevleList as $vo)
<div class="check-box">
<input type="checkbox" onclick="check_isAll(this,'purchaser_level_select','purchaser_levelAll')" class="purchaser_level_select" id="purchaser_level_ids-{{$vo->id}}" name="purchaser_level_ids[]" value="{{$vo->id}}">
<label for="purchaser_level_ids-{{$vo->id}}">{{$vo->status_name}}</label>
</div>
@endforeach </div>
</div>

js里:

//如果有一个没有选中把全选的勾去了,如果select所有的都选中了,那就把全选勾上
/**
* 全选:
* @author haima
* @param $this 当着元素
* @param $className 要操作的所有的select的class名字
*/
function checkAll($this,$className){
var current=$($this);
if(current.is(':checked')) {
$('.'+$className).prop('checked',true);
}else{
$('.'+$className).prop('checked',false);
}
} /**
* @author haima
* @param $this 当前操作的元素
* @param $className 所有的select的class名字
* @param $selectname_All 选择所有的select的id名字
*/
function check_isAll($this,$className,$selectname_All){
var current=$($this); //当着元素
var selectname_All = $('#'+$selectname_All); //全选按钮的名字
if(current.is(':checked')) {
var len_num=0;
$('.'+$className).each(function(){
if(!this.checked){
selectname_All.prop('checked',false);
return false;
}else{
len_num += 1;
}
});
var len=$('.'+$className).length; //长度
if(len == len_num){
selectname_All.prop('checked',true);
}
}else{
selectname_All.prop('checked',false);
}
}

静态页面里初始化页面时显示:

html里调用方法:

<script>
$(function(){
is_classAll('labels_idsAll','labels_ids');
is_classAll('recpos_idsAll','recpos_ids');
is_classAll('purchaser_levelAll','purchaser_level_select');
}); /**
* 静态页面里判断class是否全部被选中,如果全部都光勾选了就把all复选框也打上勾,否则all复选框不勾选
* @param $allSelectname 选择所有的select的id名字
* @param $class_name 所有的select的class名字
*/
function is_classAll($allSelectname,$class_name){
var selectname_All = $('#' + $allSelectname); //全选框的id名字
var className=$('.' + $class_name); //class的名字
var total_len=className.length; //class的总长度
var len_num=0;
className.each(function(){
if(!this.checked){
selectname_All.prop('checked',false);
return false;
}else{
len_num += 1;
}
});
if(total_len == len_num){
selectname_All.prop('checked',true);
}
} </script>

JQ 封装全选函数的更多相关文章

  1. JavaScript 全选函数的实现

    Html代码: <table id="purchase-info" class="table table-bordered table-hover table-st ...

  2. js和jq实现全选反选

    在前端中用到全选反选的案例并不少,在这里呢我就实现这个功能给大家参考参考. 这里呢就先贴上我的html和css代码 <div class="wrap"> <tab ...

  3. JQ实现全选、全不选

    代码: <table class="table myTable table-hover"> <thead> <tr> <th> &l ...

  4. jq变态全选vs原生变态全选

    <script> $(function(){ var num=0; $("#btn").on('click',function(){ if(this.checked){ ...

  5. jq实现全选、全不选、反选

    基本思路: 1全选:点击全选按钮的时候,将input的属性checked设置为true; 2全不选:点击全不选按钮的时候,将input的属性checked设置为false; 3反选:点击反选按钮的时候 ...

  6. jq实现全选非全选

    <!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8&quo ...

  7. Jq 遍历 全选 全不选 反选

    //全选 全不选 $('#checkAll').click(function () { //判断是否被选中 var bischecked = $('#checkAll').is(':checked') ...

  8. jq三级全选全不选

    <!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8&quo ...

  9. jq实现全选或者全不选

    $("#all").click(function () { if($(this).is(":checked")){ $("input[name='pr ...

随机推荐

  1. Android基础Activity篇——创建一个活动(Activity)

    1.创建活动 首先用AS创建一个add no activity项目名使用ActivityTest,包名为默认的com.example.activitytest 2.右击app.java.com.exa ...

  2. Write a makefile to compile *.c and link to executable target

    https://wenku.baidu.com/view/b1ec946027d3240c8447ef9a.html GNU+make中文手册V3.8 <=========From Docs== ...

  3. centos apache 腾讯云ssl证书配置

    首先向证书机构申请https证书,会得到证书和私钥,这里我以腾讯云证书安装为例(非常简单) 分两步走 1.申请 点击腾讯云控制台->产品模块下的ssl证书管理->点击申请证书(免费的,不要 ...

  4. 屏幕  z

    private   void   FullScreen()   //全屏      {      SizeMode   =   2;      FormBorderStyle   =   FormBo ...

  5. TP5.0:访问不同模块方法,跳转视图页面

    我们在开发项目时,都会给每个项目加上基本的后台管理页面,并命名为admin 那么,我们在添加admin后台模块后,怎么通过url访问admin后台模块文件代码呢? 1.访问admin模块默认文件的UR ...

  6. 测试笔记:jsonp跨域接口测试

    原先测过这个接口,前后端同源(域名,协议,端口相同),开发提供的文档: $.post("http://host/url", { data1: "data1", ...

  7. 【[HAOI2008]木棍分割】

    没写过几道的前缀和优化\(dp\) 第一问是小学生难度的二分 第二问就直接\(dp\)了 设\(dp[i][j]\)表示当前分割点在\(i\)之后,前面一共分割了\(j\)段的方案数 利用前缀和单调性 ...

  8. 如何使用MiniProfiler(附最新版MiniProfiler使用心得)

    MiniProfiler这个工具早就久仰大名,不过之前一直没有动力去用,正好最近手上有个ASP.NET MVC的项目,正好拿来试试手,下面是使用最新的4.0.138版本的心得体会以及踩到一些小坑的解决 ...

  9. C# 打开文件或打开文件夹

    直接打开指定的文件 System.Diagnostics.Process.Start(v_OpenFilePath); 直接打开目录 string v_OpenFolderPath = @" ...

  10. 【luogu P1004 方格取数】 题解

    题目链接:https://www.luogu.org/problemnew/show/P1004 标准的DP,不明白为什么有普及+提高的难度 四维DP[i][j][k][l] 表示第一遍走到i,j格子 ...