layui-v2.4.5 表头本地存储记忆功能

亲测可用,引用的是layui.all.js进行开发,对图例代码进行调整
1、找到F.prototype.events = function () { var e, i = this, a = i.config, o = t(“body”), c = {}, s = i.layHeader.find(“th”), h = “.layui-table-cell”, p = a.elem.attr(“lay-filter”);这一块代码,再下面加上以下代码:
在这里插入图片描述

代码

// An highlighted block
var tableFlag = window.location.pathname.replace(new RegExp('/', 'g'), "_");
        if (tableFlag != "") {
            var deploy = localStorage.getItem("TableHidden" + tableFlag + "");
            var arr = new Boolean(deploy) ? eval(deploy) : [];
            if (arr) {
                $.each(arr, function (index, ele) {
                    var checked = ele.check;
                    var key = ele.key;
                    var parentKey = ele.parentKey;
                    layui.each(o.cols, function (i1, item1) {
                        layui.each(item1, function (i2, item2) {
                            if (i1 + '-' + i2 === key) {
                                var hide = item2.hide;
                                //同步勾选列的hide值和隐藏样式
                                item2.hide = !checked;
                                //根据列的显示隐藏,同步多级表头的父级相关属性值
                                if (hide != item2.hide) {
                                    // console.log(o.index + '-' + key);
                                    // a.setParentCol(!checked, parentKey);
                                    a.elem.find('*[data-key="' + o.index + '-' + key + '"]')[checked ? 'removeClass' : 'addClass']('layui-hide');
                                }
                                //重新适配尺寸
                                a.resize();
                            }
                        })
                    })
                })
            }
        };

2、找到LAYTABLE_COLS
加如下代码页面勾选列名将其持久化到本地localStorage
在这里插入图片描述

代码

// An highlighted block
var tableFlag = window.location.pathname.replace(new RegExp('/', 'g'), "_");
        if (tableFlag != "") {
                                    var tableHidden = "";
                                    $('.layui-unselect.layui-form-checkbox').each(function (index, ele) {
                                        var key = $(ele).siblings('input').attr('data-key');
                                        var parentkey = $(ele).siblings('input').attr('name');
                                        var checked = $(ele).attr('class').indexOf('layui-form-checked') !== -1 ? true : false;
                                        tableHidden += "{'key':'" + key + "','check':" + checked + ",'parentKay':'" + parentkey + "'},";
                                    })
                                    localStorage.setItem("TableHidden" + tableFlag + "", "[" + tableHidden + "]");
                                    //end
                                }
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值