fsLayui数据表格编辑使用说明
介绍
数据表格编辑
主要使用场景:新增或编辑同时需要提交多条记录(原有模式只支持单条记录提交),通过编辑数据表格,保存
获取所有表格数据提交。
使用说明
静态表格编辑和普通数据表格使用上没有区别,只需要在原有的基础上做一些配置或修改。
普通数据表格使用说明
表格列设置可以编辑
表格如果需要编辑,那么只需要在编辑的列上增加edit="text"
即可,目前只支持文本框输入
。
1 | <div class="fsDatagridCols"> |
表格新增行
- 需要为表格增加一行空的记录,需要怎么做?
框架本身已经处理好了,我们只需要在按钮
配置function="addRow"
,描述点击按钮后,增加一个记录。
特殊说明:
如果表格的id不是默认的fsDatagrid
,那么需要在按钮上配置tableId="addFsDatagrid"
,指向对应的表格id,这点与普通数据表格
使用一致。
1 | <button class="layui-btn layui-btn layui-btn-sm" function="addRow" tableId="addFsDatagrid"> |
表格删除行
表格删除行,目前只支持在表格内配置一个模板,模板里面配置删除按钮。
配置事件监听lay-event="delRow"
描述删除行操作。
如果需要删除确认提示,可以配置isConfirm="1"
,不需要配置为0或者不配置即可。
1 | <a class="layui-btn layui-btn-danger layui-btn-xs" lay-event="delRow" isConfirm="1" confirmMsg="是否确定删除当前记录?">删除</a> |
表格初始化数据查询处理
对于新增页面,没有这个处理,对于编辑页面,需要先把之前保存的数据提取出来,对原有的数据进行操作,那么就需要做这个处理。
使用步骤:
- 配置
table
表格中异步加载地址url="/fsbus/S1030"
- 配置
table
表格中业务参数,主要用在异步加载传入的参数inputs="funcId:$id"
注意:
这里的inputs
中的配置数据不是数据表格选中的行,而是打开此页面url地址中的参数。
1 | <table id="addFsDatagrid" lay-filter="addFsDatagrid" class="fsDatagrid" groupId="test" url="/fsbus/S1030" |
保存操作
点击保存按钮后,需要怎么获取到表格里面的数据?怎么把数据提交后台处理?
- 保存按钮配置
function="save"
描述保存操作
groupId="test"
配置分组id,配置后会获取这个分组的所有数据
url="/fsbus/1007"
配置提交数据的url地址
1 | <button class="layui-btn fsAdd" function="save" groupId="test" url="/fsbus/1007"><i class="layui-icon"></i>新增</button> |
- 表格配置
groupId="test"
配置分组id,配置后保存按钮会获取到这个表格的数据
1 | <table id="addFsDatagrid" lay-filter="addFsDatagrid" class="fsDatagrid" groupId="test" url="/fsbus/S1030" |
请求参数说明
表格提交默认的参数为: fsTableData
,对应的值是一个编码后的json字符串,后台获取值后需要解码。
- java 解码demo
1 | try { |
表格的参数分为2个类型,1:原数据提交,2:增删改标签提交(fsType)
默认为1,可以在fsConfig.js
中配置datagridSubmitType
,两种模式各有各的优缺点,根据自己的要求修改。
模式一(原数据提交)
此模式会自动获取数据表格的原数据,不会做任何其他的数据,所以在编辑的时候,需要先删除以前的数据,然后重新新增。
例如:
1 | [{"LAY_TABLE_INDEX":0,"attribute":"test1","name":"测试1"},{"LAY_TABLE_INDEX":1,"attribute":"test2","name":"测试2"}] |
模式二(增删改标签提交)
此模式在数据表格原数据基础上新增了一个系统参数fsType
,可以通过这个参数来判断当前记录的操作模式(新增,修改,删除)。
fsType
参数说明:
add
: 新增
edit
: 修改
del
: 删除
例如:
1 | [{"attribute":"2121","createdTime":"2017-12-20 14:33:03","defaultValue":"2121","funcId":"393028361208020992","id":"393048159182733312","modifiedTime":"2017-12-20 14:33:03","name":"1221","orderline":"393048159182733312","value":"2121","LAY_TABLE_INDEX":0,"fsType":"edit"},{"fsType":"add","LAY_TABLE_INDEX":1,"attribute":"121212","name":"22"},{"attribute":"3223","createdTime":"2017-12-20 14:33:03","defaultValue":"23","description":"2323","funcId":"393028361208020992","id":"393048159178539008","maxLength":"3223","minLength":"3232","modifiedTime":"2017-12-20 14:34:01","name":"3223","notEmpty":"1","orderline":"393048159178539008","type":"1","value":"323232","verifyType":"Numeric","fsType":"del"}] |
完整表格demo
1 | <div class="layui-row grid-demo"> |