位置: IT常识 - 正文

Layui表格可编辑 可动态新增一行 删除当前行(layui表格编辑功能)

编辑:rootadmin
Layui表格可编辑 可动态新增一行 删除当前行

推荐整理分享Layui表格可编辑 可动态新增一行 删除当前行(layui表格编辑功能),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:layui行内编辑,layui table 单元格编辑,layui表格可编辑框,layui表格修改,layui表格修改,layui table 单元格编辑,layui表格可编辑,layui表格可编辑框,内容如对您有帮助,希望把文章链接给更多的朋友!

Layui 表格 可编辑:点击表格实现可编辑

cols: [[ //表头 {type: 'numbers', title: 'ID', width: 80, align: "center", sort: true} , {field: 'project', title: '项目', minWidth: 80, align: "center", edit: 'text'} ]]

在表头的对象中增加 edit: 'text'属性 既可编辑

Layui表格可编辑 可动态新增一行 删除当前行(layui表格编辑功能)

新增行:当点击增加行按钮 会在表格尾部新增一行 

实现原理:

思路: 先定义一个空数组,用来保存已编辑过得数据及已有数据,循环该已有数据存入新数组中,设置新增一行的空数据,最后利用Layui table.reload 重载表格 实现新增行效果!

代码实操:

//头工具栏事件table.on('toolbar(demo)', function (obj) { switch (obj.event) {        //add 既是我的按钮上 lay-event="add" 的值 case 'add':        //定义一个空数组 dataBak ,用来保存已编辑过得数据及已有数据 var dataBak = [];         //获取之前的数据 able.cache.titleId; titleId 就是该表格ID var tableBak = table.cache.titleId;         // for 循环之前的数组 for (var i = 0; i < tableBak.length; i++) {        //将之前的数据保存到 空数组中 dataBak.push(tableBak[i]); } //空数组被插入在dataBak尾部 此时数据已新增 dataBak.push({ "project": "" , "Gender": "" , "grade": "" , "achievement": "" , "score": "" , "grades": "" }); table.reload("titleId", {        // 将新数据 dataBak 重新载入ID为 titleId 的表格 实现新增一行效果 data: dataBak }) break; }});

删除当前行:删除对应的行 及数据

实现原理:

通过事件监听到该行tr 拿到他的index属性 拿到当前行的ID值,判断他是否有ID  有ID 既 是已有的数据 通过ajax 发送ID 给后台删除该条数据 成功无需刷新 同时页面也通过它的index值删除该条数据 并且通过 table.reload重载该表格 (重载该表格非常重要,否则通过index删除的数据不再精准)

//监听行工具事件table.on('tool(demo)', function (obj) { // 获取当前行 var tr = obj.tr;//拿到该行ID deleteId var deleteId = obj.data.id;//通过tr 下的selector属性 拿到.layui-table-body tr[data-index="2"]' var myString = tr.selector // 通过空格 进行切割拿到第二个值tr[data-index="2"] let subString = myString.slice(myString.indexOf(' ') + 1)        // 获取表格总数据 titleId 为表格ID var tableBak = table.cache.titleId ; if (obj.event === 'del') {//删除事件 if (deleteId === '') { layer.msg('请选择数据!'); } else { layer.confirm('确定删除选中数据吗?', { btn: ['确认', '取消'], offset: '100px' }, function () {//判断是否是已有的表格数据 是就通过AJAX 发送它的ID 删除后台的数据 if (deleteId) { $.ajax({ type: 'post', url: '/OpenTeacher/delete', data: { id: deleteId }, success: function (res) { if (res.flag) { layer.msg(res.msg, {icon: 6}); // $(".layui-laypage-btn")[0].click(); //刷新数据 } else { layer.msg(res.msg, {icon: 5}); } } }) } // 删除掉点击的当前行 $('.layui-table tbody').find(subString).remove() // 当超过10行时,应取得两位数(不考虑百行的情况) if (subString.length > 18) { arrIndex = subString.substring(15, 17) } else { arrIndex = subString.substring(15, 16) } // 删除对应 index里数组的数据 tableBak.splice(arrIndex, 1);                // 将新数据重新载入表格 table.reload("testReload", { data: tableBak }) layer.closeAll(); }, function () { layer.closeAll(); }) } }});
本文链接地址:https://www.jiuchutong.com/zhishi/283511.html 转载请保留说明!

上一篇:摩洛哥扎戈拉附近的椰枣树林 (© Frans Lemmens/Getty Images)(摩洛哥首都拉巴特简介)

下一篇:gnotify.exe是什么进程 有什么作用 gnotify进程查询(gnaupdaemon.exe是什么)

  • 互联网时代的营销迷途(互联网时代的营销观念)

  • 爱奇艺vip账号怎么登录(爱奇艺vip账号怎么查)

  • 苹果13虚拟键怎么调出来(苹果13虚拟键怎么设置)

  • QQ登录有三种验证方式吗(qq登录验证三种方式)

  • 快手电商订单如何查询(快手电商订单如何取消)

  • 佳能mg3680如何拆搓纸轮(佳能mg3680拆机教程)

  • 按键精灵打开后白屏(按键精灵打开后不是全屏)

  • 离基站多少米安全(离基站多远信号最好)

  • 计算机原理提出者是谁(计算机原理提出者)

  • spss安装不上怎么回事(spss25安装不了)

  • 黑鲨手机怎么恢复手机出厂设置(黑鲨手机怎么恢复照片)

  • soul怎么找原唱伴奏(soul里面的歌)

  • word选择不相连文字(word中选择不连续文本的快捷键)

  • 抖音私信封禁多少天(抖音私信封禁多少次永久封)

  • 华为p40能无线充电么(华为p60可以无线充电么)

  • 手机死机关机后打不开(手机死机关机后充电没反应咋办)

  • 华为手机圈圈怎么取消(华为手机上的圈圈怎么设置方法)

  • 怎样向京东售后发视频(怎样向京东售后退款)

  • qq语音自动转文字怎么开(qq语音自动转文字)

  • 拼多多砍价到后面都是0.01怎么办(拼多多砍价到后面为什么不加了)

  • macbook和air的选哪个(macbook air 和macbook)

  • 华为p30pro能拍多远(华为p30pro拍摄参数)

  • 电脑打字不显示选字框解决方法(电脑打字不显示文字选项)

  • Alexnet论文介绍(超详细)——ImageNet Classification with Deep Convolutional Neural Networks(alex研究原文)

  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设 电脑维修 湖南楚通运网络