千家信息网

如何进行table实时编辑函数封装

发表于:2026-11-03 作者:千家信息网编辑
千家信息网最后更新 2026年11月03日,如何进行table实时编辑函数封装,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。功能介绍:该函数只需要传入两个参数即可实现表格的实时编辑
千家信息网最后更新 2026年11月03日如何进行table实时编辑函数封装

如何进行table实时编辑函数封装,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。

功能介绍:

该函数只需要传入两个参数即可实现表格的实时编辑编辑后文本框失去焦点或按回车即可发送异步请求修改如果检查到没有修改则不会发请求服务器接收的参数固定为_id title con该函数修改失败的提示依赖layer插件可自行修改依赖

设置介绍:

html中给需要编辑的td单元格加上name属性即可让该单元格可编辑tr需要设置name 属性放置后台表的id作为修改条件

/** 双击编辑表格单元格* obj object 需要点击的表格单元格* url 需要请求的地址* callback 传入需要添加的html元素并返回元素的jq对象* id int 需要修改的列的id* title text 需要修改的字段名 不设置则不能编辑该单元格* con text 需要修改的字段对应的内容* */function editor(obj,url,callback) { var table = arguments[0]?arguments[0]:$("table tr td"); var postUrl = arguments[1]?arguments[1]:''; table.dblclick(function () { var con = $.trim($(this).text()); var id = $.trim($(this).parent().attr("name")); var title = $.trim($(this).attr("name")); if(!title){ return false; } //放置的html元素和对应的选中逻辑 var saveObj; if(callback) { saveObj = callback($(this), id, con, title); }else{ //不设置回调则使用默认值 $(this).html(""); saveObj = $(".update"); } //默认返回对象 if(!saveObj){ saveObj = $(".update"); } //获得真实val值 var setVal = saveObj.val(); //获取文本框焦点 saveObj.focus(); //全选输入框中的文字 saveObj.select(); //失去焦点事件 saveObj.blur(function () { var text = $(this).val(); if(text == setVal){ $(this).parent().html(con); return false; } var id = $(this).attr("name"); var title = $(this).attr("title"); //todo发请求修改 $.post(postUrl, {_id: id, title: title, con: text}, function (res) { if (res.status) { return location.reload(); } return dialog.error(res.info,function () { location.reload(); }); }); }); //回车快捷完成编辑 $(window).keyup(function (e) { var code = e.keyCode; if(code === 13){ var blur = saveObj.is(":focus"); if(blur === false){ return false; }else{ saveObj.blur(); } } }); }); enter();}//弹窗回车确认function enter(obj) { var cli = arguments[0]?arguments[0]:0; $(window).keyup(function (e) { if(e.keyCode === 13){ var btn = $(".layui-layer-btn0"); var len = btn.length; if(len<=0) { if(cli != 0) { obj.click(); } }else{ btn.click(); } } });}



新增功能:

增加回调来设置更多的标签,例如,在回调中设置点击添加一个select 标签,并返回设置的对象做后续操作

callback 参数列表:

  1. obj 当前点击的

  2. td
  3. 单元格

  4. jquey
  5. 对象用来添加设置单元格的html标签样式id 需要修改的

  6. tr
  7. 列的id即数据库主键idcon 需要修改的字段对应的内容title 需要修改的字段名 不设置则不能编辑该单元格

调用实例:

editor($("table tr td"),url,function (obj,id,con,title) { //title为type的时候需要添加一个select 否则只需要input框 if(title == 'type') { obj.html(""); if (con == "果实") { $($(".update").get(0).options[0]).attr("selected", true); } else { $($(".update").get(0).options[1]).attr("selected", true); } }else{ obj.html(""); } return $(".update"); });

看完上述内容,你们掌握如何进行table实时编辑函数封装的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注行业资讯频道,感谢各位的阅读!

单元 函数 内容 字段 对象 实时 元素 参数 更多 标签 焦点 表格 封装 功能 属性 文本 方法 果实 问题 服务 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 湖北九亚互联网络科技有限公司 伟宏互联网科技 广州紫鲸互联网科技有限公司 广州百单互联网科技有限公司 科技互联网项目 互联网科技与金融科技 银优互联网科技有限公司 四川狮子座互联网科技 互联网科技英文翻译 成都玖崟互联网科技有限公司乐商圈怎么样 互联网科技公司需要的职位 福建科技产业互联网发展 互联网科技公司实习生 江阴互联网智能科技产品进口 互联网与医疗科技 亳州好赞互联网科技有限公司 互联网保险科技创业 长沙渺峰互联网科技有限公司 重庆科技产业互联网有哪些 前海云享互联网科技 没上市的科技互联网公司 天下捷融互联网科技 西藏七维空间互联网科技有限公司 青岛中康互联网医疗科技有限公司 全球顶尖互联网科技公司 互联网科技和信息 杭州披云加互联网科技有限公司 互联网硬科技公司 福州德业互联网科技 互联网科技对化妆品行业
0