如何在jqgrid中设置选项?

时间:2010-04-23 04:43:00

标签: jquery jquery-plugins jqgrid

我需要设置Jqgrid的选项,如toppager,forceFit,“可以更改?”值设置为“否”因此我厌倦了通过这样添加来设置

jQuery(document).ready(function () {
    jQuery("#list").setGridParam({
        forceFit: true,
        toppager: true
    }).trigger("reloadGrid");
    jQuery("#list").jqGrid({
        url: '<%= Url.Action("GridData") %>',
        datatype: 'json',
        mtype: 'GET',
        colNames: ['Time', 'Description', 'Category', 'Type', 'Originator', 'Vessel'],
        colModel: [{
            name: 'Time',
            index: 'Time',
            width: 200,
            align: 'left'
        }, {
            name: 'Description',
            index: 'Description',
            width: 600,
            align: 'left'
        }, {
            name: 'Category',
            index: 'Category',
            width: 100,
            align: 'left'
        }, {
            name: 'Type',
            index: 'Type',
            width: 100,
            align: 'left'
        }, {
            name: 'Originator',
            index: 'Originator',
            width: 100,
            align: 'left'
        }, {
            name: 'Vessel',
            index: 'Vessel',
            align: 'left'
        }],
        pager: jQuery('#pager'),
        rowNum: 20,
        rowList: [10, 20, 50],
        sortname: 'Time',
        sortorder: "desc",
        viewrecords: true,
        hoverrows: false,
        gridview: true,
        emptyrecords: 'No data for the applied filter',
        height: 460,
        caption: 'Logbook Grid',
        //forceFit: true,
        width: 1200
    });
});

但它没有用你能不能让我知道我到底做错了什么或者正确的方法呢?

2 个答案:

答案 0 :(得分:1)

首先,您尝试在创建网格之前(jQuery(“#list”之前)设置jQuery(“#list”)。setGridParam()的jqGrid参数.jqGrid({...}))

秒可以改变jqGrid的每个jqGrid参数而不是setGridParam。您可以在jqGrid选项http://www.trirand.com/jqgridwiki/doku.php?id=wiki:options的表中找到setGridParam支持的参数列表(请参阅最后一个“可以更改?”列。)

在你的情况下,你应该在创建jqGrid期间轻松添加forceFit:true,toppager:true到jqGrid选项列表:

jQuery(document).ready(function() {
    jQuery("#list").jqGrid({
        url: '<%= Url.Action("GridData") %>',
        datatype: 'json',
        mtype: 'GET',
        forceFit: true,
        toppager: true
        colNames:['Time', 'Description', 'Category', 'Type', 'Originator', 'Vessel'],
        ...
    });
});

另一个典型的初学者错误不包括CSS文件或JS文件的错误顺序。确认您没有执行此类错误(请参阅http://www.trirand.com/jqgridwiki/doku.php?id=wiki:how_to_install)。

我希望jqGrid在这次改变后能够正常工作。

答案 1 :(得分:0)

您应该在创建网格后调用setGridParam,而不是之前,如下所示:

jQuery("#list").jqGrid(...).setGridParam(...)