layui表格進行單頁全選和單個選中以及取消,可以對選中數據和取消的數據進行操作:
代碼如下:
table.on('checkbox(resourceQueryTable)', function (obj) {//保存當前頁選中數據 let checked = obj.checked; //當前選擇的狀態,是否選中 if (obj.type == 'all') { //全選 if (checked) { dataArr.forEach(item => {//全部選中,直接向ids push當前選中的數據 filterGids.forEach((item_,index)=>{ if(item_==item.gid){ filterGids.splice(index, 1); } }) ids.push(item) }) } else { dataArr.forEach((item, index) => {//取消全選,循環判斷是否相等,相等就刪除 filterGids.push(item.gid);//獲取取消選中的數據 ids.forEach((val, i) => { if (item.gid == val.gid) { ids.splice(i, 1) } }) }) } } else { //單選 if (checked) { ids.push(obj.data);//選中,直接向ids push當前選中的數據 filterGids.forEach((item_,index)=>{ if(item_==obj.data.gid){ filterGids.splice(index, 1); } }) } else { filterGids.push(obj.data.gid); ids.map((item, index) => {//取消選擇,循環判斷是否相等,相等就刪除 if (obj.data.gid == item.gid) { ids.splice(index, 1) } }) } } });