You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在动态生成的ag-grid中修改表格显示行数?

解决AG Grid动态数据下分页行数切换失效的问题

方法一:保存Grid实例引用

初始化Grid时将实例存储起来,后续直接调用实例的API方法:

  • 初始化阶段:
    // 在全局或组件作用域内声明变量
    let gridInstance;
    
    // 创建Grid时保存实例
    gridInstance = new agGrid.Grid(gridDiv, gridOptions);
    
  • 下拉选择框的切换事件处理:
    function onPageSizeChange(newSize) {
      gridInstance.api.paginationSetPageSize(Number(newSize));
    }
    

方法二:通过DOM容器获取Grid实例

如果不想维护全局实例变量,可直接通过Grid所在的DOM容器获取实例:

function onPageSizeChange(newSize) {
  const gridDiv = document.getElementById('your-grid-container-id');
  const gridInstance = agGrid.Grid.getGridInstance(gridDiv);
  gridInstance.api.paginationSetPageSize(Number(newSize));
}

方法三:利用onGridReady回调保存API引用

在gridOptions中通过onGridReady回调获取并保存Grid的API对象:

let gridApi;

const gridOptions = {
  // 其他表格配置...
  onGridReady: (params) => {
    gridApi = params.api;
    // 在此处加载动态数据
    fetch('your-json-file-path')
      .then(res => res.json())
      .then(data => gridApi.setRowData(data));
  }
};

// 下拉切换事件
function onPageSizeChange(newSize) {
  gridApi.paginationSetPageSize(Number(newSize));
}

注意事项

  • 确保调用paginationSetPageSize时Grid已完成初始化(比如在onGridReady回调触发之后)
  • 下拉框传递的数值需要转为数字类型,避免类型错误导致方法调用失败

内容的提问来源于stack exchange,提问作者Khakovs

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.10 10:13:10