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 相关文章推荐
学习ExtJS accordion布局
Oct 08 Javascript
Javascript处理DOM元素事件实现代码
May 23 Javascript
jquery ajax post提交数据乱码
Nov 05 Javascript
浅析hasOwnProperty方法的应用
Nov 20 Javascript
javascript实现添加附件功能的方法
Nov 18 Javascript
HTML5 Shiv完美解决IE(IE6/IE7/IE8)不兼容HTML5标签的方法
Nov 25 Javascript
jQuery Easyui使用(一)之可折叠面板的布局手风琴菜单
Aug 17 Javascript
浅谈vue同一页面中拥有两个表单时,的验证问题
Sep 18 Javascript
小程序登录态管理的方法示例
Nov 13 Javascript
使用webpack搭建vue项目实现脚手架功能
Mar 15 Javascript
vue指令v-html使用过滤器filters功能实例
Oct 25 Javascript
小程序实现上下切换位置
Nov 16 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字符串的递增和递减示例介绍
2014/02/11 PHP
PHP常用函数和常见疑难问题解答
2014/03/05 PHP
php实现通过ftp上传文件
2015/06/19 PHP
php Session无效分析资料整理
2016/11/29 PHP
PHP封装类似thinkphp连贯操作数据库Db类与简单应用示例
2019/05/08 PHP
PHP实现统计代码行数小工具
2019/09/19 PHP
Laravel5.1 框架表单验证操作实例详解
2020/01/07 PHP
window.open被浏览器拦截后的自定义提示效果代码
2007/11/19 Javascript
基于jquery封装的一个js分页
2011/11/15 Javascript
关于JS判断图片是否加载完成且获取图片宽度的方法
2013/04/09 Javascript
JS实现的仿东京商城菜单、仿Win右键菜单及仿淘宝TAB特效合集
2015/09/28 Javascript
AngularJS基础 ng-switch 指令简单示例
2016/08/03 Javascript
javascript创建对象的3种方法
2016/11/02 Javascript
jQuery展示表格点击变色、全选、删除
2017/01/05 Javascript
详解Vue2.0 事件派发与接收
2017/09/05 Javascript
微信小程序用户自定义模版用法实例分析
2017/11/28 Javascript
修改vue+webpack run build的路径方法
2018/09/01 Javascript
使用electron制作满屏心特效的示例代码
2018/11/27 Javascript
浅谈vue限制文本框输入数字的正确姿势
2019/09/02 Javascript
[19:54]夜魇凡尔赛茶话会 第一期02:看图识人
2021/03/11 DOTA
Python函数式编程指南(四):生成器详解
2015/06/24 Python
简要讲解Python编程中线程的创建与锁的使用
2016/02/28 Python
详解Python装饰器由浅入深
2016/12/09 Python
Python使用微信SDK实现的微信支付功能示例
2017/06/30 Python
Python使用Selenium模块实现模拟浏览器抓取淘宝商品美食信息功能示例
2018/07/18 Python
使用Python3内置文档高效学习以及官方中文文档
2019/05/19 Python
使用Python+selenium实现第一个自动化测试脚本
2020/03/17 Python
在Django中自定义filter并在template中的使用详解
2020/05/19 Python
Keras 在fit_generator训练方式中加入图像random_crop操作
2020/07/03 Python
国际领先的学术出版商:Springer
2017/01/11 全球购物
安踏官方商城:anta.cn
2019/12/16 全球购物
邮政员工辞职信
2014/01/16 职场文书
公务员培的训心得体会
2014/09/01 职场文书
2016年教师寒假学习心得体会
2015/10/09 职场文书
详解TypeScript中的类型保护
2021/04/29 Javascript
Python 如何利用ffmpeg 处理视频素材
2021/11/27 Python