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 Base类 包含基本的方法
Jul 22 Javascript
基于json的jquery地区联动效果代码
Jul 06 Javascript
JavaScript高级程序设计 阅读笔记(十二) js内置对象Math
Aug 14 Javascript
在JavaScript中实现类的方式探讨
Aug 28 Javascript
JS实现转动随机数抽奖特效代码
Apr 16 Javascript
Jquery实现遮罩层的简单实例(就是弹出DIV周围都灰色不能操作)
Jul 14 Javascript
javascript 四十条常用技巧大全
Sep 09 Javascript
详解AngularJs中$sce与$sceDelegate上下文转义服务
Sep 21 Javascript
微信小程序开发之相册选择和拍照详解及实例代码
Feb 22 Javascript
jQuery表单设置值的方法
Jun 30 jQuery
jQuery实现查看图片功能
Dec 01 jQuery
原生JS中应该禁止出现的写法
May 05 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
第一节--面向对象编程
2006/11/16 PHP
php curl 伪造IP来源的实例代码
2012/11/01 PHP
php通过asort()给关联数组按照值排序的方法
2015/03/18 PHP
php为字符串前后添加指定数量字符的方法
2015/05/04 PHP
使用jquery给input和textarea设定ie中的focus
2008/05/29 Javascript
JavaScript中的闭包原理分析
2010/03/08 Javascript
基于jQuery的图片剪切插件
2011/08/03 Javascript
JS操作CSS随机改变网页背景实现思路
2014/03/10 Javascript
聊一聊JavaScript作用域和作用域链
2016/05/03 Javascript
正则表达式(语法篇推荐)
2016/06/24 Javascript
jQuery Select下拉框操作小结(推荐)
2016/07/22 Javascript
强大的JavaScript响应式图表Chartist.js的使用
2017/09/13 Javascript
nodejs基于WS模块实现WebSocket聊天功能的方法
2018/01/12 NodeJs
Vue.set()实现数据动态响应的方法
2018/02/07 Javascript
微信小程序仿RadioGroup改变样式的处理方案
2018/07/13 Javascript
微信小程序网络层封装的实现(promise, 登录锁)
2019/05/08 Javascript
微信小程序实现一张或多张图片上传(云开发)
2019/09/25 Javascript
JavaScript封装单向链表的示例代码
2020/09/17 Javascript
Python中转换角度为弧度的radians()方法
2015/05/18 Python
使用python和Django完成博客数据库的迁移方法
2018/01/05 Python
python读取LMDB中图像的方法
2018/07/02 Python
详解Python列表赋值复制深拷贝及5种浅拷贝
2019/05/15 Python
python 接口实现 供第三方调用的例子
2019/08/13 Python
css3制作彩色边线3d立体按钮的示例(css3按钮)
2014/05/06 HTML / CSS
Clarks鞋法国官方网站:英国其乐鞋品牌
2018/02/11 全球购物
荷兰时尚精品店:Labels Fashion
2020/03/22 全球购物
struct和class的区别
2015/11/20 面试题
公司业务主管岗位职责
2013/12/07 职场文书
警校毕业生自我评价
2014/04/06 职场文书
《动手做做看》教学反思
2014/04/09 职场文书
竞选学生会主席演讲稿
2014/04/24 职场文书
公司领导班子对照检查材料
2014/09/24 职场文书
小学教师党员承诺书
2015/04/27 职场文书
2015年法院工作总结范文
2015/04/28 职场文书
农贸批发市场管理制度
2015/08/07 职场文书
django学习之ajax post传参的2种格式实例
2021/05/14 Python