js代码如以下代码:在initAllGrid函数colModel1加入属性设置:frozen:true;然后在_initGrid('task_con_grid_div',colModel1)函数里面加入$("#"+gridType+"_grid").jqGrid('setFrozenColumns');即可。

eastcom.modules.workorderQuery = (function() {
//其他方法省略
...... //初始化所有grid
function initAllGrid(){
var colModel1 = [{label:'冻结列1-test11',name:'order_id',index:'order_id', width:170, align:"center",sortable:false,frozen:true //滑动时此列冻结设置
},{label:'冻结列2-test22',name:'alarmfrom_type',index:'alarmfrom_type', width:120, align:"center",sortable:false,frozen:true //滑动时此列冻结设置
},{label:'地市',name:'order_city',index:'order_city', width:70, align:"center",sortable:false
},{label:'区县',name:'order_county',index:'order_county', width:70, align:"center",sortable:false
},{label:'网络分类',name:'order_typedes',index:'order_typedes', width:90, align:"center",sortable:false
}];
_initGrid('task_con_grid_div',colModel1);
} //初始化grid的方法
function _initGrid(gridType,colModel){//
$("#"+gridType+"_grid").jqGrid({
height: 470,
rowNum : 15,
datatype: "local",
autowidth : false,
shrinkToFit : false,
autoScroll: true,
colModel:colModel,
pager: "#"+gridType+"_gridPager",
loadComplete:function(){
eastcom.syncIframeHeight();
$('body').unmask();
}
});
$("#"+gridType+"_grid").jqGrid('setFrozenColumns');//滑动时此列冻结设置
} //初始化时加载
function init(){ ......
initAllGrid(); ...... } return {
init : init,
......
}; })();

注意:这里只是针对首列,或首列第二列。。。按顺序的才能有效果;如果设置第一列和第三列那么只有第一列冻结,只能连续列设置!具体说明请看文档。

感谢分享

参考网址:http://www.trirand.com/jqgridwiki/doku.php?id=wiki:frozencolumns

05-11 15:10