bootstrapTable刷新选项refreshOptions方法使用

By | 2020年6月29日

其实这个使用方法很简单,但容易出错,官方试例如下:

$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)内的参数

发表评论

电子邮件地址不会被公开。 必填项已用*标注