当bootstrap table 获取数据为空时,我们不想显示之前的数据,那么调用bootstrap table 的onLoadSuccess方法:
onLoadSuccess: function (data) {
var allTableData = $('#bootstrap-table').bootstrapTable('getData');
if ((isEmptyForObject(data) || data.total === 0 || isEmptyForObject(data.rows)) && allTableData.length > 0) {
$("#bootstrap-table").bootstrapTable('destroy');
$.table.init(options);
}
}
function isEmptyForObject(object) {
if (object === undefined || object === null) {
return true;
}
return false;
}
$.table.init(options); 这里是初始化方法的调用,这里你只需要替换成重新加载表格就可以了,一般我们将初始化表格写在一个方法体中,然后调用这个方法实现初始化,所以调用这个初始化表格的方法,就可以实现表格的重新加载初始化。
例如:
var TableInit = function () {
$('#bootstrap-table').bootstrapTable({
url: '/Interface/GetData', //请求后台的URL(*)
method: 'get', //请求方式(*)
toolbar: '#toolbar', //工具按钮用哪个容器
striped: true, //是否显示行间隔色
cache: false, //是否使用缓存,默认为true,所以一般情况下需要设置一下这个属性(*)
pagination: true, //是否显示分页(*)
sortable: false, //是否启用排序
sortOrder: "asc", //排序方式
queryParams: oTableInit.queryParams,//传递参数(*)
sidePagination: "server", //分页方式:client客户端分页,server服务端分页(*)
pageNumber: 1, //初始化加载第一页,默认第一页
pageSize: 10, //每页的记录行数(*)
pageList: [10, 25, 50, 100], //可供选择的每页的行数(*)
search: true, //是否显示表格搜索,此搜索是客户端搜索,不会进服务端,所以,个人感觉意义不大
contentType: "application/x-www-form-urlencoded",
strictSearch: true,
showColumns: true, //是否显示所有的列
showRefresh: true, //是否显示刷新按钮
minimumCountColumns: 2, //最少允许的列数
clickToSelect: true, //是否启用点击选中行
height: 700, //行高,如果没有设置height属性,表格自动根据记录条数觉得表格高度
uniqueId: "no", //每一行的唯一标识,一般为主键列
showToggle: true, //是否显示详细视图和列表视图的切换按钮
cardView: false, //是否显示详细视图
detailView: false, //是否显示父子表
columns: [
{
field: 'ID',
title: 'ID'
}, {
field: 'Name',
title: '名字'
}, {
field: 'Sex',
title: '性别'
},
{
field: 'operate',
title: '操作',
formatter: operateFormatter //自定义方法,添加操作按钮
}],
onLoadSuccess: function (data) {
var allTableData = $('#bootstrap-table').bootstrapTable('getData');
if ((isEmptyForObject(data) || data.total === 0 || isEmptyForObject(data.rows)) && allTableData.length > 0) {
$("#bootstrap-table").bootstrapTable('destroy');
TableInit();
}
}
});
};
初始化调用:
TableInit();