Layui表格行工具事件与数据回填方法


Posted in Javascript onSeptember 13, 2019

使用Layui数据表格实现行工具事件与Layui表单弹框与数据回填具体步骤如下:

步骤一:布置行工具栏样式与数据表格初始化,代码如下:

<script type="text/html" id="barDemo2">
    <a class="layui-btn layui-btn-xs layui-btn-normal" lay-event="compile">编辑</a>
    <a class="layui-btn layui-btn-xs layui-btn-normal" lay-event="delete">删除</a>
 </script>
var listEnquiryQuote;//询价记录表格
layui.use(['table','form','layer'], function () {
//询价记录表格初始化
      listEnquiryQuote = table.render({
        elem: '#EnquiryQuote'
       , method: 'post'
       , url: '/Purchase/AwaitQueryPrice/SelectEnquiry' //数据接口
       , id: 'idEnquiryQuote'
       , page: true //开启分页
       , cols: [[ //表头
         { type: 'radio' }
        , { field: 'EnquiryID', title: '询价ID', hide: true }
        , { field: 'SupplierName', title: '供应商名称', width: 180 }
        , { field: 'CompanyName', title: '公司英文名', width: 180 }
        , { field: 'SupplierID', title: '供应商ID', hide: true }
        , { field: 'ProductName', title: '产品名称', width: 90 }
        , { field: 'Model', title: '型号', width: 120 }
        , { field: 'Trademark', title: '原厂品牌', width: 90 }
        , { field: 'PrimaryNumber', title: '原厂料号', width: 90 }
        , { field: 'QualityName', title: '品质', width: 60 }
        , { field: 'QualityID', title: '品质ID', hide: true }
        , { field: 'UnitName', title: '单位', width: 60 }
        , { field: 'UnitID', title: '单位ID', hide: true }
        , { field: 'FPackaging', title: '封装', width: 90 }
        , { field: 'BPackaging', title: '包装', width: 60 }
        , { field: 'DateCodeS', title: '生产日期', width: 105 }
        , { field: 'Describe', title: '描述', width: 150 }
        , { field: 'DeliveryTime', title: '货期', width: 60 }
        , { field: 'MinOrder', title: '最小订购量', width: 105 }
        , { field: 'QuantityDemanded', title: '需求量', width: 80 }
        , { field: 'TaxPoint', title: '税点', width: 60 }
        , { field: 'Quote', title: '报价', width: 70 }
        , { field: 'EnquiryDateS', title: '询价日期', width: 105 }
        , { field: 'AdoptQuantity', title: '采纳量', width: 80 }
        , { fixed: 'right', title: '操作', toolbar: '#barDemo2', width: 120 }
       ]]
        , limit: 10
        , response: {
          statusName: 'success' //规定数据状态的字段名称,默认:code
         , statusCode: true //规定成功的状态码,默认:0
         , countName: 'totalRows' //规定数据总数的字段名称,默认:count
        }
        , request: {
          pageName: 'curPage' //页码的参数名称,默认:page
         , limitName: 'pageSize'
        }
      });
});

效果图如下:

Layui表格行工具事件与数据回填方法

步骤二:监听行点击事件:

layui.use(['table','form','layer'], function () {
//监听询价记录行工具事件
      table.on('tool(EnquiryQuote)', function (obj) {
        var data = obj.data;
        //修改
        if (obj.event === 'compile') {
          if (data.AdoptQuantity == null || data.AdoptQuantity == 0) {
            //弹出修改询价记录模态框
            layer.open({
              type: 1,
              title: '修改询价记录',
              area: ['950px', '600px'],
              content: $('#UpdateEnquiry'), //这里content是一个DOM,注意:最好该元素要存放在body最外层,否则可能被其它的相对元素所影响
            });
          } else {
            layer.msg('已有采购单采纳该询价,不得编辑!', { icon: 0 });
          }
          //重置
          $("#reset4").click(function () {
            //数据回填
            form.val("UpdateEnquiry", data);
            form.val("UpdateEnquiry", {
              "DateCode": data.DateCodeS
            })
            if (data.SupplierID != null) {
              //给表单赋值
              form.val("UpdateEnquiry", {
                "State": "true"
              })
            } else {
              //给表单赋值
              form.val("UpdateEnquiry", {
                "State": ""
              })
            }
          });
          $("#reset4").click();
    } 
});

应注意的表单必须有layui-form类与lay-filter属性,本文献lay-filter属性值为UpdateEnquiry,可自定义

把回填事件写入重置按钮点击事件这样设置的好处是在点击重置是在点击重置时可以重新回填数据,可以给用户选择的空间,效果图如下:

Layui表格行工具事件与数据回填方法

以上这篇Layui表格行工具事件与数据回填方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
在Javascript中为String对象添加trim,ltrim,rtrim方法
Sep 22 Javascript
Mootools 1.2教程 正则表达式
Sep 15 Javascript
JQuery扩展插件Validate—4设置错误提示的样式
Sep 05 Javascript
Javascript计算两个marker之间的距离(Google Map V3)
Apr 26 Javascript
javascript事件函数中获得事件源的两种不错方法
Mar 17 Javascript
JavaScript匿名函数与委托使用示例
Jul 22 Javascript
javascript获取wx.config内部字段解决微信分享
Mar 09 Javascript
微信小程序 图片上传实例详解
May 05 Javascript
小程序click-scroll组件设计
Jun 18 Javascript
layUI实现三级导航菜单效果
Jul 26 Javascript
聊聊Vue中provide/inject的应用详解
Nov 10 Javascript
解决ant Design中Select设置initialValue时的大坑
Oct 29 Javascript
layui使用表格渲染获取行数据的例子
Sep 13 #Javascript
layui-table表复选框勾选的所有行数据获取的例子
Sep 13 #Javascript
layui表格数据复选框回显设置方法
Sep 13 #Javascript
对layui初始化列表的CheckBox属性详解
Sep 13 #Javascript
vue cli3 调用百度翻译API翻译页面的实现示例
Sep 13 #Javascript
使用VScode 插件debugger for chrome 调试react源码的方法
Sep 13 #Javascript
layui实现把数据表格时间戳转换为时间格式的例子
Sep 12 #Javascript
You might like
php数字每三位加逗号的功能函数
2015/10/22 PHP
php获取linux命令结果的实例
2017/03/13 PHP
PHP 8新特性简介
2020/08/18 PHP
有关DOM元素与事件的3个谜题
2010/11/11 Javascript
windows系统下简单nodejs安装及环境配置
2013/01/08 NodeJs
js nextSibling属性和previousSibling属性概述及使用注意
2013/02/16 Javascript
js/jQuery简单实现选项卡功能
2014/01/02 Javascript
jquery查找tr td 示例模拟
2014/05/08 Javascript
jQuery获取URL请求参数的方法
2015/07/18 Javascript
跟我学习javascript的执行上下文
2015/11/18 Javascript
AngularJS中的过滤器filter用法完全解析
2016/04/22 Javascript
JS中对Cookie的操作详解
2016/08/05 Javascript
bootstrap suggest下拉框使用详解
2017/04/10 Javascript
解决Vue2.0 watch对象属性变化监听不到的问题
2018/09/11 Javascript
React传值 组件传值 之间的关系详解
2019/08/26 Javascript
在vue项目中封装echarts的步骤
2020/12/25 Vue.js
python实现的简单猜数字游戏
2015/04/04 Python
python实现计数排序与桶排序实例代码
2019/03/28 Python
Pyecharts地图显示不完成问题解决方案
2020/05/11 Python
Python 通过爬虫实现GitHub网页的模拟登录的示例代码
2020/08/17 Python
HearthSong官网:儿童户外玩具、儿童益智玩具
2017/10/16 全球购物
C语言怎样定义和声明全局变量和函数最好
2013/11/26 面试题
介绍一下JMS编程步骤
2015/09/22 面试题
大学生党课思想汇报
2013/12/29 职场文书
语文教学感言
2014/02/06 职场文书
学生评语大全
2014/04/18 职场文书
学校节能宣传周活动总结
2014/07/09 职场文书
公安民警正风肃纪剖析材料
2014/10/10 职场文书
单位作风建设自查报告
2014/10/23 职场文书
党员个人承诺书
2015/04/27 职场文书
2015年干部教育培训工作总结
2015/05/15 职场文书
校园广播站开场白
2015/06/01 职场文书
文艺节目主持词
2015/07/06 职场文书
创业计划书介绍
2019/04/24 职场文书
详解MySQL中的主键与事务
2021/05/27 MySQL
nginx服务器的下载安装与使用详解
2021/08/02 Servers