停止jqgrid中可调整大小的列

停止jqgrid中可调整大小的列,jqgrid,Jqgrid,如何使jqgrid的所有列不可调整大小?目前,我认为每一列都必须指定属性{resizeable:false}。我可以为整个网格指定任何方式吗?从3.8.2版开始,jqGrid支持一个非常有用的功能:列模板。(我对该功能的赞扬可能不太正确,因为该功能是在:-)上介绍的)。该功能仍然没有真正的文档记录,但它可以非常容易地使用 我用一个例子来解释。如果定义其他jqGrid参数 cmTemplate:{resizable:false} 那你的问题就解决了 如果您在colModel项的所有列中有更多常见

如何使jqgrid的所有列不可调整大小?目前,我认为每一列都必须指定属性{resizeable:false}。我可以为整个网格指定任何方式吗?

从3.8.2版开始,jqGrid支持一个非常有用的功能:列模板。(我对该功能的赞扬可能不太正确,因为该功能是在:-)上介绍的)。该功能仍然没有真正的文档记录,但它可以非常容易地使用

我用一个例子来解释。如果定义其他jqGrid参数

cmTemplate:{resizable:false}
那你的问题就解决了

如果您在
colModel
项的所有列中有更多常见的属性,例如
align:'center'
cmTemplate
也会帮助您(cmTemplate:{resizeable:false,align:'center'})。在jqGrid 3.8.2中,相对于
colModel
中的设置,模板设置的优先级较小,但该错误在jqGrid 4.0.0中已修复。因此,
cmTemplate
中的属性可以解释为
colModel
项的默认值

jqGrid列模板的另一个版本如下:

var myDateTemplate = {sorttype:'date', formatter:'date',
                      formatoptions: {newformat:'m/d/Y'}, datefmt: 'm/d/Y',
                      align:'center', width:80 }
$("list").jqGrid({
    colModel: [
        ...
        {name:'column1': template:myDateTemplate},
        {name:'column2': template:myDateTemplate, width:90},
        ...
    ]
    ...
});

通过这种方式,您可以定义一些模板(如
myDateTemplate
),并在网格(或GID)中的许多位置使用它们。关于该功能,您可以使代码更短、可读性更好、易于更改。

模板对我来说非常有用:

 { name: 'quantity_warehouse', index: 'quantity_warehouse', template: intColTemplate, width: '70' },

 { name: 'status', index: 'status', align: 'left', template: stringColTemplate, width: '90' },

 { name: 'snapshot_at', index: 'snapshot_at', template: dateColTemplate },

 { name: 'applied_at', index: 'applied_at', template: dateColTemplate },
JS:


你在jqgrid中真的很棒。我将尝试一下,看看事情是如何运作的,在此之前我将把jqgrid从3.8.2升级到4.0。我无法成功升级:(到处都面临许多问题。我们在3.8.2中有什么方法可以做到这一点吗?@Vijaya Anand:我在回答中写道,jqgrid 3.8.2中已经支持列模板。所以你可以添加
cmTemplate:{resizeable:false}
参数在当前网格中,您的问题应该得到解决。@Vijaya Anand:您在使用列模板方面有任何成功吗?@Oleg:日期模板示例中有两个格式化程序:
格式化程序:'Date',格式化程序:'Date'
var dateColTemplate = { align: 'left', search: true, stype: 'text', width: '70', datefmt: 'm/d/y', formatter: 'date', formatoptions: { srcformat: 'm/d/y', newformat: 'm/d/Y' }, sorttype: 'date', searchrules: { required: true, date: true }, searchoptions: { sopt: ['eq', 'ge', 'le'],

    dataInit: function (el) {
        $(el).datepicker({ changeYear: true, changeMonth: true, showButtonPanel: true });
    }
}
};
var intColTemplate = { align: 'left', search: true, stype: 'text', searchoptions: { sopt: ['eq', 'ge', 'le']} };
var stringColTemplate = { align: 'left', search: true, stype: 'text', searchoptions: { sopt: ['bw', 'cn']} };