1 回答

TA貢獻1875條經(jīng)驗 獲得超3個贊
我做了一些更改,formatter: "actions"以簡化您的方案的實現(xiàn)。該演示演示了如何使用新功能。如下圖所示顯示網(wǎng)格
在此處輸入圖片說明
該演示將Action列定義colModel為
{ name: "act", template: "actions", align: "left", width: 58 }, // 58 = 2 + 18*3 + 2
并且它使用actionsNavOptions(可以formatoptions替代使用)來配置以下選項formatter: "actions":
actionsNavOptions: {
editbutton: false,
custom: [
{ action: "open", position: "first",
onClick: function (options) {
alert("Open, rowid=" + options.rowid);
} },
{ action: "post", position: "first",
onClick: function (options) {
alert("Post, rowid=" + options.rowid);
} }
],
posticon: "fa-lock",
posttitle: "Confirm (F2)",
openicon: "fa-folder-open-o",
opentitle: "Open (Enter)",
isDisplayButtons: function (options, rowData) {
if (options.rowData.closed) { // or rowData.closed
return { post: { hidden: true }, del: { display: false } };
}
}
}
數(shù)組custom定義了動作名稱position和onClick回調(diào)。要定義自定義按鈕的圖標(biāo)和標(biāo)題(工具提示),應(yīng)在導(dǎo)航欄選項附近指定選項。它們指定圖標(biāo)類的屬性將從動作名稱(被構(gòu)造open和post在上面的例子)和后綴"icon"以相同的方式將被定義為按鈕標(biāo)題屬性的值。
回調(diào)isDisplayButtons允許根據(jù)行和rowid的數(shù)據(jù)通知jqGrid有關(guān)按鈕的顯示。該options參數(shù)與您從自定義格式化程序中了解的選項相同。options.rowId例如是rowid。最新版本的免費jqGrid(第4.8版)通過包含擴展了這些選項rowData。您可以看到的第二個參數(shù)isDisplayButtons已經(jīng)是rowData。options.rowData和rowData數(shù)據(jù)格式之間的主要區(qū)別。在使用情況下,XML輸入rowData參數(shù)是輸入數(shù)據(jù)的XML項。另一方面,選項options.rowData是具有屬性的對象,例如中的name屬性colModel。尤其是在使用loadonce: trueXML數(shù)據(jù)的情況下,options.rowData有優(yōu)勢。在上述演示options.rowData和rowData是相同的。
回調(diào)isDisplayButtons應(yīng)返回與動作名稱具有相同屬性的對象{ post: {...}, open: {...}, del: {...}, edit: {...}, save: {...}, cancel: {} }。每個此類對象的屬性可以是
hidden: true-表示將按鈕包括在列中,但將其隱藏。稍后可以顯示該按鈕。在save和cancel按鈕默認(rèn)隱藏。
display: false-表示完全不包含該按鈕。del: {display: false}例如,返回具有與option相同的效果delbutton: false,但del: {display: false}僅適用于一行。
noHovering: true可用于onmouseover="jQuery(this).addClass('ui-state-hover');" onmouseout="jQuery(this).removeClass('ui-state-hover');"從指定的操作按鈕中刪除懸停效果()。
- 1 回答
- 0 關(guān)注
- 574 瀏覽
添加回答
舉報