本文章为原创文章,转载请注明出处

html

<div class="layui-btn-group tableBtn">
<button class="layui-btn" data-type="add">添加</button>
</div>
<table class="layui-table" id="tableData" lay-filter="tableData"></table>
toolbar操作按钮
<script type="text/html" id="operationBtn">
<a class="layui-btn layui-btn-xs" lay-event="edit">编辑</a>
<a class="layui-btn layui-btn-danger layui-btn-xs" lay-event="del">删除</a>
</script>
数据绑定
function initTable(){
//tableIns存储table.render()方法返回的对象,以便重载table时使用
tableIns = table.render({
elem: '#tableData' //对应table的id (table 容器的选择器或 DOM)
,url:'/UserInfo/GetData' //请求路径
,method:'post' //请求方式 ,默认get
,page:true //是否启用分页
,cellMinWidth: 50 //全局定义常规单元格的最小宽度,layui 2.2.1 新增
,cols: [[
{type:'checkbox'}
,{field:'ID', title: 'ID',align:'center', sort: true}
,{field:'Sex', title: '性别',align:'center', sort: true,templet:function(row){//处理特殊数据自 layui 2.2.5 开始,templet 开始支持函数形式,函数返回一个参数,包含接口返回的所有字段和数据
if(row.Sex) return '男';
return '女';
}} //
,{field:'Autograph', title: '签名', minWidth: 100,align:'center'} //minWidth:局部定义当前单元格的最小宽度,layui 2.2.1 新增
,{toolbar:'#operationBtn',title:'操作',align:'center'} //绑定列工具条。设定后,可在每行列中出现一些自定义的操作性按钮 operationBtn对应的是上面的toolbar操作按钮
]] //设置表头
,limits:[30,60,90] //每页条数的选择项,默认 [10,20,30,40,50,60,70,80,90]
,limit:30 //每页显示的条数,默认:10
});
}
按钮的对应事件写法
var $ = layui.$, active = {
add: function(){ //add 是添加按钮data-type的值
//do something
}
};
//调用tableBtn对应的active事件
$('.tableBtn .layui-btn').on('click', function(){
var type = $(this).data('type');
active[type] ? active[type].call(this) : '';
});
操作按钮事件
//监听工具条 `table.on('event(filter)', callback);` event为内置事件名,filter为容器lay-filter设定的值
table.on('tool(tableData)', function(obj){
var data = obj.data;
//删除
if(obj.event === 'del'){
layer.confirm('确定删除吗', function(index){
//do something 点击确定时执行该处代码
});
} else if(obj.event === 'edit'){
//do something
}
});
table重载
//table重载
function reload(){
tableIns.reload();//此处的tableIns就是渲染table时的返回值
}

分页条

page:true开启分页条

页码默认参数:page

每页条数默认参数:limit

自定义配置参数
request: {
pageName: 'curr', //页码的参数名称,默认:page
limitName: 'nums' //每页数据量的参数名,默认:limit
}
自定义数据格式
response: {
statusName: 'status', //数据状态的字段名称,默认:code
statusCode: 200, //成功的状态码,默认:0
msgName: 'hint', //状态信息的字段名称,默认:msg
countName: 'total', //数据总数的字段名称,默认:count
dataName: 'rows', //数据列表的字段名称,默认:data
}
自定义后台返回数据格式(上述)
{
status: 200,
hint: "",
total: 1000,
rows: []
}
默认接受数据格式
{
code: 0,
msg: "",
count: 1000,
data: []
}

更多table操作请参考 http://www.layui.com/doc/modules/table.html

table-layui的更多相关文章

  1. LayUI之table数据表格获取行、行高亮等相关操作

    前言 目前LayUI数据表格既美观有不乏一些实用功能.基本上表格应有的操作已经具备,LayUI作者[贤心]肯定是煞费苦心去优化,此处致敬.但是实话实话,如果单纯那数据表格功能来说,EasUI的数据表格 ...

  2. layui table分页 page为false时,limit问题

    问题描述:table数据表格page设为false时,limit为默认设置10 解决办法:limit设为 Number.MAX_VALUE 加载全部数据 实例: var table = layui.t ...

  3. Layui table 组件的使用:初始化加载数据、数据刷新表格、传参数

    背景 笔者之前一直使用 bootstrap table ,因为当前项目中主要使用 Layui 框架,于是也就随了 Layui table ,只是在使用的时候出现了一些问题,当然也是怪自己不熟悉的锅吧! ...

  4. layui table动态表头 改变表格头部 重新加载表格

    改变头部原理: 删除原来表格, 重新建立DOM元素, 重新加载table,实现表头改变 明白了原理, 我相信大家都能写出来了, table.reload(ID, options)目前好像还不支持con ...

  5. layui table 表格模板按钮实例

    这是个是全部的jsp 页面: <%@page pageEncoding="UTF-8" contentType="text/html; charset=UTF-8& ...

  6. layui(四)——table组件常见用法总结

    table是 layui 最核心的组成之一.它用于对表格进行一些列功能和动态化数据操作,涵盖了日常业务所涉及的几乎全部需求.支持固定表头.固定行.固定列左/列右,支持拖拽改变列宽度,支持排序,支持多级 ...

  7. layui框架中关于table方法级渲染和自动化渲染之间的区别简单介绍

    方法级渲染: <table class="layui-hide" id="LAY_table_user" lay-filter="user&qu ...

  8. 项目总结17-使用layui table分页表格

    项目总结17-使用layui table分页表格总结 前言 在项目中,需要用到分页的表格来展示数据,发现layui的分页表格,是一个很好的选择:本文介绍layui table分页表格的前后端简单使用 ...

  9. 在layui layer 弹出层中加载 layui table

    layui.use('table', function(){ var table = layui.table; layer.open({ type : 1, area : [ "600px& ...

  10. layui时间,table,大图查看,弹出框,获取音频长度,文件上传

    1.引入: <link href="../../Scripts/layui-v2.3.0/css/layui.css" rel="stylesheet" ...

随机推荐

  1. 高并发下的Java数据结构(List、Set、Map、Queue)

    由于并行程序与串行程序的不同特点,适用于串行程序的一些数据结构可能无法直接在并发环境下正常工作,这是因为这些数据结构不是线程安全的.本节将着重介绍一些可以用于多线程环境的数据结构,如并发List.并发 ...

  2. JVM参数配置 java内存区域

    java内存区域 一些基本概念 http://www.importnew.com/18694.html https://www.cnblogs.com/wangyayun/p/6557851.html ...

  3. Arduino通过L9110进行电机控制

    L9110S是为控制和驱动电机设计的两通道推挽式功率放大专用集成电路器件,将分立电路集成在单片IC之中,使外围器件成本降低,整机可靠性提高. 该芯片有两个TTL/CMOS兼容电平的输入,具有良好的抗干 ...

  4. mysql触发器,视图,游标

    什么事触发器: 触发器是一中特殊的存储过程,主要是通过事件来触发而被执行的.它可以强化约束,来维护数据的完整性和一致性,可以跟踪数据库内的操作从而不允许未经许可的更新和变化.可以联级运算.如,某表上的 ...

  5. p33自然同态

    如何理解两个划线的地方 1.因为,所以所以ker(π|_H)=kerπ∩H=N∩H 2.gN=Ng,对任意的g 属于G       因为 N被H/N 包含     也对任意的 g 属于 HN成立    ...

  6. js总结:三级联动

    <!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8&quo ...

  7. 【转】shell之for、while、until循环

    一.简介       Shell编程中循环命令用于特定条件下决定某些语句重复执行的控制方式,有三种常用的循环语句:for.while和until.while循环和for循环属于“当型循环”,而unti ...

  8. Python中Celery 的基本用法以及Django 结合 Celery 的使用和实时监控进程

    celery是什么 1 celery是一个简单,灵活且可靠的,处理大量消息的分布式系统 2 专注于实时处理的异步任务队列 3 同时也支持任务调度 执行流程 Celery 基本使用 tasks.py i ...

  9. 正则校验:微信号,qq号,邮箱

    java判断微信号.手机.名字的正则表达 - willgos - 博客园https://www.cnblogs.com/solossl/p/5813106.html 微信号正则校验,qq正则,邮箱正则 ...

  10. node-sass下载失败 关于webpack

    安装node-sass提示没有vendor目录的解决办法在node-sass目录下面新建一个vendor的空目录,然后运行npm/cnpm rebuild node-sass --save-dev即可 ...