views:

26

answers:

1

Is there a way to make all columns on a grid NOT sortable other than adding sortable:false to each column? I know you can set global options at the grid level but didn't know if you could do it at the colModel level.

A: 

There are no global setting in jqGrid which corresponds to the sortable:false from the colModel. Moreover jqGrid read directly the value of colModel without usage some default setting per every column element. So you have to define sortable:false in every column explicitly.

On the other side you can do following:

// we define simplified column model without repeating of the same information
var cm = [
    {name:'id', key: true},
    {name:'name'},
    // ...
];
// new we define "our standard" properties which will be the same in all columns
var myStdModel = {width: 150, sortable: false};

// we extend (or overwrite) "our standard" properties
for (var i=0; i<cm.length; i++) {
    $.extend(cm, myStdModel);
    cm.index = cm.name;
}

$("#list").jqGrid ({
    colModel: cm, // we use the column model built before
    // all other settings
});

In the way you can probably archive the same results which you want, but in the other way.

Oleg
Thanks Oleg. We went with adding `sortable:false` to each column.
Marcus