layui table 列属性 edit 可判断是否有权限修改方案

layui 中 table组件里面的 列属性有一个 edit

这个edit 只有一个固定值 text

 

但是如果我们有一个列表

有些行可以修改 有些又不能修改

这个时候就需要重造此方法了

原始代码 此为 table 中的 td 点击事件处理

 i.layBody.on("click", "td", function (e) { var i = t(this), a = (i.data("field"), i.data("edit")), l = i.children(h); if (!i.data("off") && a) { var n = t(''); return n[0].value = i.data("content") || l.text(), i.find("." + R)[0] || i.append(n), n.focus(), void layui.stope(e) } }).

 

修改为

i.layBody.on("click", "td", function (e) {
            var b = t(this), a = (b.data("field"), b.data("edit")), l = b.children(h),n = b.parents("tr").eq(0).data("index");
            var itemData = d.cache[i.key][n];
            if(isExitsFunction(a)){
                var func = eval(a);
                a = func(itemData);
            }
            if (!b.data("off") && a) {
                var n = t('<input class="layui-input ' + R + '">');
                return n[0].value = b.data("content") || l.text(), b.find("." + R)[0] || b.append(n), n.focus(), void layui.stope(e)
            }
        })

其中 设置edit:"checkEditAuth" 需要为函数名 且挂载在window中

function checkEditAuth(d){

return d.staff_id == <?=Yii::$app->user->getId()?>;
}

修改代码如下

layui table 列属性 edit 可判断是否有权限修改方案插图
© 版权声明
THE END
喜欢就支持一下吧
点赞0 分享
评论抢沙发

请登录后发表评论