jQuery中Kendo Grid加载完成后如何修改列过滤选项与宽度参数?
Kendo Grid 初始化后动态修改列过滤配置与列宽的实现方法
核心使用 Kendo Grid 官方提供的setOptions()方法修改实例配置,修改后会自动重绘Grid,所有配置永久生效,不会因为后续Grid重绘复原。
完整实现代码
// 获取已初始化的Grid实例 const grid = $("#Table").data("kendoGrid"); // 遍历列配置,修改指定列参数 const modifiedColumns = grid.options.columns.map(column => { // 匹配目标Customer列,通过field匹配准确性更高 if (column.field === "Customer.Title") { // 新增多选过滤配置 column.filterable = { multi: true }; // 修改列宽为120 column.width = 120; } return column; }); // 提交配置修改,Grid自动重绘 grid.setOptions({ columns: modifiedColumns });
注意事项
- 列匹配优先使用
field属性,避免标题修改、多语言场景下匹配失效 - 如果需要在Grid首次加载完成后自动执行该修改,可以将上述代码放入Grid的
dataBound事件回调中 setOptions方法会保留当前Grid的分页、排序、选中状态,不需要重新绑定数据源
内容的提问来源于stack exchange,提问作者javad daryabari
相关产品推荐
相关产品推荐

