2011-08-22 19 views

Odpowiedz

19

Funkcjonalność ta została dodana w jqGrid 4.0+

Po zdefiniowaniu sekcję colModel w konfiguracji jqGrid, dodać następujące:

cmTemplate: {sortable:false}, 

To zmusi wszystkie kolumny nie będzie sortable.

+7

Chciałem napisać to samo. Dzięki! Funkcja 'cmTemplate' istnieje już w jqGrid 3.8.2, ale priorytet' cmTemplate' był zbyt wysoki w 3.8.2. Więc jeśli używasz 'cmTemplate: {sortable: false}' i ma 'sortable: true' w niektórych kolumnach, jqGrid 3.8.2 użyje' sortable: false' dla wszystkich kolumn i jqGrid 4.x użyje ustawienia ' sortable: true' dla jednej kolumny. – Oleg

1

Jeśli chcesz warunkowo wyłączyć sortowanie na wszystkich kolumn zamiast sztywno ją w siatce to polecam następujące

//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 }); 
     } 
    }