其实这个使用方法很简单,但容易出错,官方试例如下:
$table.bootstrapTable('refreshOptions', {});
这个例子只是给出了使用方法,至于后面花括号{}内应该如何传参却未介绍,导致很多人传入错误参数无法生效。
如:我需要刷新列表的分页及偏移量,应该怎么传参,很多人可能会将offset和pageNumber传过去,其实这是错的;需要记住的是这个方法是刷新选项,既然是选项,那么传入的参数应该是bootstrapTable的配置选项,既:
window.$chooseActivityGoodsTable = $('#chooseActivityGoodsTable');
$chooseActivityGoodsTable.bootstrapTable('destroy').bootstrapTable({
height:tableHeight,
toolbar:"#toolbarChooseActivityGoods",
toolbarAlign:'right',
method: 'post',
dataType: "json",
dataField: 'rows',
url:'/url',
undefinedText: "null",//当数据为 undefined 时显示的字符
striped : true, //是否显示行间隔色
pageNumber : 1, //初始化加载第一页
pagination : true,//是否分页
sidePagination: "server",
pageSize : 10,//单页记录数
pageList : [ 10, 20, 30, 60, 100],//可选择单页记录数
paginationPreText: '上一页',
paginationNextText: '下一页',
showRefresh : false,//刷新按钮
queryParamsType : "limit",
uniqueId : 'goods_bar_code',
queryParams : function(params) { //上传服务器的参数
var filter={};
filter.key=$.trim($("#chooseActivityGoodsSearchKey").val());
filter.sttime=$.trim($("#add_goods_st_time").val());
filter.edtime=$.trim($("#add_goods_en_time").val());
filter.year=$.trim($("select[name='filter_year']").val());
filter.autumn=$.trim($("select[name='filter_autumn']").val());
filter.series=$.trim($("select[name='filter_series']").val());
filter.sex=$.trim($("select[name='filter_sex']").val());
filter.color=$.trim($("select[name='filter_color']").val());
filter.size=$.trim($("select[name='filter_size']").val());
filter.band=$.trim($("select[name='filter_band']").val());
filter.offset=params.offset;
filter.pageNumber=params.limit;
filter.warehouseId=warehouseId;
return filter;
},
responseHandler: function (res) {
layer.close(loadding);
return res;
},
onLoadError: function(){
layer.close(loadding);
layer.msg("请求失败,网络错误");
},
columns:[
....... ///此处省略了
],
});
refreshOptions传入的参数应该是上面初始化内的属性参数(如:pageSize、pageList、pageNumber….),而不是你自定义参数属性(queryParams)内的参数