当bootstrap table的配置信息发生改变时会执行onRefreshOptions事件,例如当然每页分页数改变、服务器端分页网站改变,但是注意这个并不是像Vue一样配置对象option属性值发生改变就会触发这个事件,而是用户调用了 $('#table').bootstrapTable('refreshOptions',{})刷新配置的方法才会触发onRefreshOptions事件。
参数如下
参数名称 | 说明 |
options | bootstrap table的设置信息,就是初始化时配置的高度、样式、是否服务器分页等设置 |
onRefreshOptions:function(options)
{
alert(JSON.stringify(options));
}
$('#table').on('refresh-options.bs.table', function (e,options){
alert(JSON.stringify(options));
});
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<script src="https://www.itxst.com/package/bootstrap-table-1.14.1/jquery-3.3.1/jquery.js"></script>
<link href="https://www.itxst.com/package/bootstrap-table-1.14.1/bootstrap-4.3.1/css/bootstrap.css" rel="stylesheet" />
<link href="https://www.itxst.com/package/bootstrap-table-1.14.1/bootstrap-table-1.14.1/bootstrap-table.css" rel="stylesheet" />
<script src="https://www.itxst.com/package/bootstrap-table-1.14.1/bootstrap-table-1.14.1/bootstrap-table.js"></script>
<link href="https://www.itxst.com/package/font-awesome/css/font-awesome.min.css" rel="stylesheet" />
<title>bootstrap table onRefreshOptions当前配置发生改变时的事件例子</title>
<style>
.table-demo {
width: 80%;
margin: 30px auto 0px auto;
}
</style>
</head>
<body>
<div class="table-demo">
<table id="table"></table>
</div>
<script>
//设置需要显示的列
var columns = [{
field: 'Id',
title: '编号'
}, {
field: 'ProductName',
title: '产品名称'
}, {
field: 'StockNum',
title: 'Item 库存'
}];
//需要显示的数据
var data = [{
Id: 1,
ProductName: '香蕉',
StockNum: '100'
}, {
Id: 2,
ProductName: '苹果',
StockNum: '200'
}];
setTimeout(function(){
data.push( {
Id: 3,
ProductName: '苹果',
StockNum: '200'
});
},2000);
// 设置需要显示的列
var columns = [{
field: 'Id',
title: '编号'
}, {
field: 'ProductName',
title: '产品名称'
}, {
field: 'StockNum',
title: 'Item 库存'
}];
$('#table').bootstrapTable({
url: '/package/bootstrap-table-1.14.1/data.json',
pagination: true,//开启分页
search: true, //开启刷选
columns: columns,
onRefreshOptions:function(options)
{
alert(JSON.stringify(options));
}
});
$('#table').bootstrapTable('refreshOptions', {
search: false
})
</script>
</body>
</html>