[英]jqGrid filterToolbar(): Cannot read property 'length' of undefined
[英]jqgrid Cannot read property 'rows' of undefined
我試圖在我的jqgrid
表中添加一個自定義滾動條,在 loadComplete 方法上,像這樣: $(".ui-jqgrid-bdiv").mCustomScrollbar();
它對我來說很好用,但如果列凍結,我會收到此錯誤: Cannot read property 'rows' of undefined
也許有人可以幫助我解決這個問題? 謝謝
這是我的代碼:
const colModel = [
{
name: "select",
width: 35,
frozen: true,
},
{
name: "name",
width: 80,
label: "NAME",
fixed: true,
frozen: true,
},
{
name: "date_saved",
width: 130,
label: "DATE SAVED"
},
{
name: "company",
width: 130,
label: "COMPANY"
},
];
export const refreshSavedContacts = () =>
$.getJSON('/endpoint')
.success(({ data }) => $("#jqGrid").jqGrid('clearGridData').jqGrid('setGridParam', { data }).trigger('reloadGrid'))
.error((error) => console.error("error: " + error));
export const savedContacts = () => {
$("#jqGrid").jqGrid({
autoencode: false,
colModel,
sortIconsBeforeText: true,
viewsortcols: [true, "vertical", true],
autowidth: true,
shrinkToFit: false,
cmTemplate: { editable: true, autoResizable: true },
iconSet: "jQueryUI",
autoResizing: { compact: true },
inlineEditing: { keys: true, position: "afterSelected" },
sortname: "invdate",
sortorder: "desc",
height: 230,
multiselect: true,
multiselectPosition: "none",
loadComplete: () => $(".ui-jqgrid-bdiv").mCustomScrollbar(),
})
$("#jqGrid").jqGrid('setFrozenColumns');
}
您使用了不支持的 jqGrid 版本 - free-jqGrid,建議您切換到支持的 Guriddo jqGrid 版本。
使用帶有凍結列的自定義滾動條需要覆蓋網格滾動功能。 我不確定在 free-jqGrid 中是否更改了原始滾動代碼,但您必須查看功能scrollGrid 。
實際上,您應該在滾動主體 div 時滾動凍結的 div。 在 Guriddo jqGrid 中這是這樣的(在 scrollGrid 函數中)。
if(p.frozenColumns) {
$(grid.fbDiv).scrollTop( grid.bDiv.scrollTop );
}
此外,您應該查看 setFrozenColumns 方法,以便在水平滾動時更改代碼。
換句話說,這不是一項微不足道的任務。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.