2011-08-22 104 views

回答

19

此功能在jqGrid的4.0+

加入在jqGrid的配置中定義你的colModel段後,添加以下內容:

cmTemplate: {sortable:false}, 

這將迫使所有列不再是排序。

+7

我想寫相同。謝謝! 'cmTemplate'功能已經存在於jqGrid 3.8.2中,但是'cmTemplate'的優先級在3.8.2中過高。因此,如果在某列中使用'cmTemplate:{sortable:false}'並且具有'sortable:true',那麼jqGrid 3.8.2將對所有列使用'sortable:false',並且jqGrid 4.x將使用' sortable:true'爲一列。 – Oleg

1

如果要有條件地取消對所有列排序,而不是在網格硬編碼,那麼我會推薦以下

//your function 
function Example(){ 

    //define grid 
    var grid = $("#list"); 

    //get all column names 
    var columnNames = grid[0].p.colNames; 

    //iterate through each and disable 
    for (i = 0; i < columnNames.length; i++) { 
      grid.setColProp(columnNames[i], { sortable: false }); 
     } 
    }