layui移除(删除)table表格的一行

表格里添加删除按钮:

html 复制代码
         , {
             field: 'wealth', width: 150, title: '操作', align: 'center', fixed: 'right',
             templet: function (item) {
                 return '<a style="margin:0px 5px; color:red; cursor: pointer;" lay-event="delete" id="DeleteTr" >删除</a>';
             }
         }

添加 "delete"事件:

html 复制代码
        //监听行工具事件
        table.on('tool(' + TableObj.tableId + ')', function (obj) {
            var data = obj.data;       
            //添加删除行
            if (obj.event === 'delete') {
                //alert('delete');
                layer.confirm('真的删除行么', function (index) {                  
                    var cacheData = layui.table.cache[TableObj.tableId];//获取缓存
                    obj.del();//①移除这一行
                    var rowIndex = obj.tr.attr("data-index"); //获取行索引
                    cacheData.splice(rowIndex, 1);  //②彻底移除元素,从缓存里移除这一行
                    layer.close(index);//关闭弹窗
                });
            }

        });

图例:

说明:

layui的table,光用 obj.del(); 去移除一行虽然看上去这一行没了。

但是table的缓存还存在这被移除的行数据,还需要移除它的缓存内容,如下:

html 复制代码
var cacheData = layui.table.cache[TableObj.tableId];//获取talbe的缓存
obj.del();//删除行
var rowIndex = obj.tr.attr("data-index"); //获取行索引
cacheData.splice(rowIndex, 1); //从缓存里删除行数据
相关推荐
VcB之殇13 分钟前
three.js中使用canvas生成动态纹理贴图
javascript·three.js
小彭努力中3 小时前
8.Three.js中的 StereoCamera 立体相机详解+示例代码
开发语言·前端·javascript·vue.js·深度学习·数码相机·ecmascript
牧天白衣.6 小时前
html中margin的用法
前端·html
NoneCoder6 小时前
HTML与安全性:XSS、防御与最佳实践
前端·html·xss
沃野_juededa6 小时前
关于uniapp 中uview input组件设置为readonly 或者disabled input区域不可点击问题
java·前端·uni-app
哎哟喂_!6 小时前
UniApp 实现分享功能
前端·javascript·vue.js·uni-app
k1955142396 小时前
uniapp常用
前端·javascript·uni-app
wuhen_n8 小时前
CSS元素动画篇:基于页面位置的变换动画
前端·css·html·css3·html5
sql123456789119 小时前
前端——CSS1
前端
Nueuis9 小时前
微信小程序分页和下拉刷新
服务器·前端·微信小程序