問題描述:
在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值,唯一標識表格