问题描述:
在layui表格中,最后一列增加了操作按钮,并且在某些行设置了样式,但是在排序之后,按钮的点击事件失效了,样式也没有了,可能是没有执行done回调
原因:
done回调只有在render和reload的时候执行
解决办法:
在生成完表格之后,监听排序事件,在排序事件里面执行reload方法,重新执行done回调,并且初始化排序
例子:
html代码
<div id="tableTest" lay-filter="test"></div>
js代码:
var table = layui.table;
var dataList = [
{ No: 1, Name: '张三' },
{ No: 2, Name: '李四' }
];
var titleList = [[
{ field: 'No', title: '序号' },
{ field: 'Name', title: '名字' }
]];
table.render({ elem: '#tableTest', data: dataList, cols: titleList, id: 'tableId' });
table.on('sort(test)', function(obj) {
table.reload('tableId', {
initSort: obj
});
});
table.reload('tableId', {});
注意:
①sort事件()里面的test是初始容器里面的lay-filter属性的值
②reload里面的tableId是table.render里面的id值,唯一标识表格