0

我只想从 jqgrid 导出数据。

所以基本上我已经有一个包含数据的绑定网格,我想将数据作为 json 字符串获取,这样我就可以BindGridModel(data)稍后调用并绑定数据,而无需仅从客户端返回服务器。

如何将数据作为 json 字符串获取,以便稍后我可以将其作为数据提供给网格?

这是我的网格配置:

function BindGridModel(data) {
    $('#jqgInventory').jqGrid({
        autowidth: true,
        caption: 'Inventory',
        datatype: 'json',
        forceFit: true,
        gridview: true,
        height: 500,
        hidegrid: false,
        ignoreCase: true,
        loadui: 'disable',
        pager: '#pager',
        mtype: 'post',
        rowNum: 25,
        shrinkToFit: true,
        url: '/MCI/Inventory/Inventory/GetIndexGridData',
        viewrecords: true,
        postData: {
            modelView: JSON.stringify(model),
            __RequestVerificationToken: $('[name="__RequestVerificationToken"]').val()
        },
        beforeRequest: function() {
            $('#gridScript').block();
        },
        beforeSelectRow: function(rowid, e) {
            return false;
        },
        gridComplete: function() {
            $('#lblVehicleCount').html($('#jqgInventory').getGridParam('records'));
            $('#gridScript').unblock();
            Inventory.modifyGridCellClick();
        },
        colModel: [
            {
            align: 'center',
            name: 'Select',
            label: 'SEL',
            title: true,
            width: 20,
            index: 'Select'},
        {
            align: 'left',
            name: 'Photo',
            hidden: false,
            label: 'PHOTO',
            stype: 'text',
            sortable: false,
            sorttype: 'text',
            title: true,
            width: 100,
            index: 'Photo'},
        {
            align: 'left',
            name: 'Information',
            hidden: false,
            label: 'INFO',
            stype: 'text',
            sortable: false,
            sorttype: 'text',
            title: true,
            width: 100,
            index: 'Information'},
        {
            align: 'right',
            name: 'Price',
            hidden: false,
            label: 'PRICE',
            stype: 'text',
            sortable: true,
            sorttype: function(cellValue) {
                return CustomGridSortByIntegerAsString(cellValue);
            },
            title: true,
            width: 50,
            index: 'Price'},
        {
            align: 'right',
            name: 'Mileage',
            hidden: false,
            label: 'MILEAGE',
            stype: 'text',
            sortable: true,
            sorttype: function(cellValue) {
                return CustomGridSortByIntegerAsString(cellValue);
            },
            title: true,
            width: 25,
            index: 'Mileage'},
        {
            align: 'right',
            name: 'Age',
            hidden: false,
            label: 'AGE',
            stype: 'text',
            sortable: true,
            sorttype: function(cellValue) {
                return CustomGridSortByIntegerAsString(cellValue);
            },
            title: true,
            width: 50,
            index: 'Age'},
        {
            name: 'VehicleKey',
            hidden: true,
            label: 'VEHICLEKEY',
            width: 50,
            index: 'VehicleKey'}
        ],
        data: data
    });
}
4

1 回答 1

0

loadComplete事件中,您可以访问绑定到网格的数据,并且可以对其进行 JSON 字符串化。我通常将其设置为 Jquery 数据属性,以便我可以在事件之外访问它。

loadComplete: function(data) {
    $('#gridid').data('jqdata', data);//JSON stringify the data 1st if you need to
},

然后,您可以稍后通过以下方式访问该数据:

$('#gridid').data('jqdata');
于 2012-05-09T18:05:03.687 回答