bootstrap table onRefreshOptions当前配置发生改变时的事件

当bootstrap table的配置信息发生改变时会执行onRefreshOptions事件,例如当然每页分页数改变、服务器端分页网站改变,但是注意这个并不是像Vue一样配置对象option属性值发生改变就会触发这个事件,而是用户调用了 $('#table').bootstrapTable('refreshOptions',{})刷新配置的方法才会触发onRefreshOptions事件。

onRefreshOptions事件

参数如下

参数名称说明
optionsbootstrap table的设置信息,就是初始化时配置的高度、样式、是否服务器分页等设置

onRefreshOptions事件绑定方式一

onRefreshOptions:function(options)
{
      alert(JSON.stringify(options));
}

onRefreshOptions事件绑定方式二

$('#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>

在线试一试