在使用JqGrid時,Table中最后一列是操作列,在操作列中每一行都一個操作按鈕,該操作按鈕類似下拉菜單,如下圖:

在點擊Table中【操作】一列時需要彈出一個Div層,該Div層中包含一堆按鈕,用于對Table行進行操作,如下:

解決步驟如下:
1、首先,在colModel中的列上添加屬性edittype:'select'和方法formatter:groupGrid.formatOptions,如下圖:

方便復制,代碼如下:
{label:'操作',name: 'operations',index: 'operations',width: 80, sortable: false,align:'center',cellattr: addCellAttr, editable:true,edittype:'select',formatter:groupGrid.formatOptions }formatOptions方法如下圖,方法中拼接了html代碼:

說明:其中的單引號我使用了"/"進行轉義。請求URL中的參數值從rowObject中獲取。
2、其次,以上代碼添加好后Table中處理操作按鈕,但僅僅是操作按鈕,在點擊【操作】按鈕的時候彈出層被Table的行所遮住了,即在Table行下層彈出,所以并不能看到想要的彈出層,這是JqGrid留下的坑,經過幾番論戰與掙扎后發現需要自己去設置CSS樣式。
解決辦法如下:
A、添加屬性cellattr,其值設置為“addCellAttr”,即:
cellattr: addCellAttr

B、編寫addCellAttr方法事件,如下圖:

方便復制,代碼如下:
function addCellAttr(rowId, val, rawObject, cm, rdata) { return "style='overflow: visible;'"; }添加好后實現的效果如下所示:

以上所述是小編給大家介紹的jQGrid Table操作列中點擊【操作】按鈕彈出按鈕層的實現代碼,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對武林網網站的支持!
新聞熱點
疑難解答