我需要在刷新从 AJAX 请求获取数据的表后立即从 Bootstrap 表获取数据。
table.bootstrapTable('refresh');
var data = table.bootstrapTable('getData');
这给了我调用 AJAX 之前的数据 - 我认为这是因为 getData 在刷新完全完成之前被调用。我搜索了刷新完成后触发的事件,但没有。
通过 DOM 元素的值获取它给出了相同的结果。打电话给
delay()
根本不是一个选择。你知道该怎么做吗?
代码有点复杂(在几个函数中)但是:
post.done(function(data) {
//...some code
table.bootstrapTable('refresh');
$this.updateSomethingInTable(table);
})
updateSomethingInTable= function(detailsTable) {
//...some code
var detailsTableData = detailsTable.bootstrapTable('getData');
//updating something with detailsTableData
}
编辑:
$('#table').on('load-success.bs.table', function() {
// your code to get data
});
http://bootstrap-table.wenzhixin.net.cn/documentation/#events
我已经在这个jsfiddle上进行了测试:http://jsfiddle.net/e3nk137y/16571/
onPostBody jQuery 事件:post-body.bs.table