当前位置: 首页 > article >正文

layui 表格点击编辑感觉很好用,实现方法如下


1. 在 HTML 页面中引入 layui 的相关资源文件:

```html
<link rel="stylesheet" href="https://cdn.staticfile.org/layui/2.5.6/css/layui.css">
<script src="https://cdn.staticfile.org/layui/2.5.6/layui.js"></script>
  1. 创建一个包含表格的容器:
<div id="table-container"></div>
  1. 初始化 layui:
layui.use('table', function () {
    var table = layui.table;

    // 表格配置
    var tableConfig = {
        elem: '#table-container',
        height: 'full-150',
        url: '/api/data', // 表格数据接口
        page: true, // 开启分页
        cols: [[
            {field: 'id', title: 'ID', edit: 'text'},
            {field: 'name', title: '姓名', edit: 'text'},
            {field: 'age', title: '年龄', edit: 'text'},
            {field: 'gender', title: '性别', edit: 'text'},
            {field: 'address', title: '地址', edit: 'text'},
            {field: 'operation', title: '操作', toolbar: '#operation-bar'}
        ]]
    };

    // 渲染表格
    table.render(tableConfig);

    // 监听表格编辑事件
    table.on('edit(table-filter)', function (obj) {
        var data = obj.data; // 编辑后的数据
        var field = obj.field; // 编辑的字段名
        var value = obj.value; // 编辑后的值

        // 在这里可以将编辑后的数据通过 Ajax 请求发送到后台保存
    });
});
  1. 在表格配置的 cols 中指定需要编辑的列,并设置 edit 属性为 ‘text’ 或其他合适的编辑方式。在上述代码中,我们设定了 id、name、age、gender 和 address 这几个字段可以编辑。

  2. 在监听编辑事件的回调函数中,可以获取编辑后的数据以及编辑的字段名和值。在这里可以通过 Ajax 请求将编辑后的数据发送到后台保存。

注意事项:

  • 在编辑事件的回调函数中,可以通过 obj.data 获取当前行的数据,obj.field 获取编辑的字段名,obj.value 获取编辑后的值。
  • 表格的 elem 属性需要设置为表格容器的 id 或 class。
  • 可以根据需要修改表格的其他配置项,比如接口地址、分页等。

这样,当用户点击表格中的单元格进行编辑时,会触发表格的编辑事件,你可以在回调函数中处理编辑后的数据。

//监听单元格编辑事件
table.on(‘edit(listRecordTo002Filter)’, function(obj){
var value = obj.value; // 得到修改后的值
var data = obj.data; // 得到所在行所有键值
var field = obj.field; // 得到字段

$.ajax({
   type: 'POST',
   url : "[[@{/technology/record/updateRecordTo002}]]",
   data: JSON.stringify({
      id: data.id,
      field: field,
      value: value
   }),
   contentType: 'application/json',
   success: function(response) {
      // 根据需要处理成功的响应
      console.log('Save success:', response);
      layer.msg('已保存修改', {icon: 1});
   },
   error: function(xhr, status, error) {
      // 根据需要处理错误的响应
      console.error('Save error:', error);
      layer.msg('保存失败', {icon: 2});
   }
});

console.log('Edited value:', value);
console.log('Edited row data:', data);

http://www.kler.cn/a/396953.html

相关文章:

  • Python常用魔术方法 (学习笔记)
  • 快速上手:Docker 安装详细教程(适用于 Windows、macOS、Linux)
  • .netcore + postgis 保存地图围栏数据
  • 【C语言指南】C语言内存管理 深度解析
  • Java集合(Collection+Map)
  • git如何开启SSH?
  • ZeroSSL HTTPS SSL证书ACMESSL申请3个月证书
  • unity3d————Resources卸载资源
  • 如何构建安全可靠的 HarmonyOS 应用
  • 【软件工程】一篇入门UML建模图(类图)
  • C++11标准模板(STL)- 常用数学函数 - 宏常量 - 求值得到float类型的安静NaN(NAN)
  • 硬件---4电感---基本概念与特性
  • Aria2-CVE-2023-39141漏洞分析
  • 使用 Caffeine 缓存并在业务方法上通过注解实现每3到5秒更新缓存
  • Python学习笔记(2)正则表达式
  • 《Java核心技术 卷I》用户界面AWT事件继承层次
  • 【网络】什么是交换机?switch
  • IDC机房服务器托管的费用组成
  • 【MyBatis操作数据库】XML配置
  • 自然语言处理(NLP)的开源生态系统:Hugging Face 原理和使用
  • [241115] Debian 12.8 发布 | Mistral AI 推出批量 API,成本降低 50%
  • “嵌入”在大语言模型中是解决把句子转换成向量表示的技术
  • Servlet⽣生命周期超级细(笔记)
  • 区间和 离散化 模板题
  • CentOS 升级 gcc 版本
  • 项目风险管理的3大要素