我這個結束。 Dion的解決方案讓我開始瞭解使用羣組,但是該解決方案僅限於沒有鎖定的列,不同的羣組中有什麼。
另外請注意:我不想用grid.setOptions,因爲它的侷限性,破壞附着事件和報頭(在使用ASP MVC助手來解析網格的情況下)
function setColumnWidths(grid, options) {
var lockedCount = 0;
for (var i = 0; i < options.columns.length; i++) {
if (options.columns[i].hasOwnProperty('locked')) {
if (options.columns[i].locked) {
lockedCount++;
}
}
}
for (var i = 0; i < options.columns.length; i++) {
var width = options.columns[i].width;
grid.columns[i].width = width;
if (options.columns[i].hasOwnProperty('locked') && options.columns[i].locked) {
$("#grid .k-grid-header-locked").find("colgroup col").eq(i).width(width);
$("#grid .k-grid-content-locked").find("colgroup col").eq(i).width(width);
} else {
$("#grid .k-grid-header-wrap").find("colgroup col").eq(i-lockedCount).width(width);
$("#grid .k-grid-content").find("colgroup col").eq(i - lockedCount).width(width);
}
}
// Hack to refresh grid visual state
grid.reorderColumn(1, grid.columns[0]);
grid.reorderColumn(1, grid.columns[0]);
}
用於查找col的JQuery可能不再正確。我只需要做這樣的事情,我的結局就像這樣:$(「#grid .k-grid-header .k-grid-header-wrap」)。find ... – Echostorm