小编Bre*_*cht的帖子

在没有AddJsonRows的情况下在jQgrid中加载本地JSON数据

我正在使用方法addJsonRows将本地数据添加到jQgrid.由于此方法禁用排序,我需要另一种解决方案.一个限制:我无法设置url并从服务器获取数据,因为数据是通过另一个组件传递的.

在片段下方启发了案例.注释行显示限制,我通过定义一个局部变量来替换它以获得测试用例.

<script type="text/javascript" language="javascript">
    function loadPackageGrid() {
    // Get package grid data from hidden input.
    // var data = eval("("+$("#qsmId").find(".qsm-data-packages").first().val()+")");
        var data =  {
            "page": "1",
            "records": "2",
            "rows": [
                { "id": "83123a", "PackageCode": "83123a" },
                { "id": "83566a", "PackageCode": "83566a" }
            ]
        };

        $("#packages")[0].addJSONData(data);
    };

    $(document).ready(function() {
        $("#packages").jqGrid({
            colModel: [
                { name: 'PackageCode', index: 'PackageCode', width: "110" },
                { name: 'Name', index: 'Name', width: "300" }
            ],
            pager: $('#packagePager'),
            datatype: "local",
            rowNum: 10000,
            viewrecords: true,
            caption: "Packages",
            height: …
Run Code Online (Sandbox Code Playgroud)

jqgrid

28
推荐指数
1
解决办法
5万
查看次数

使用setGridParam将json数据加载到jqgrid中

我在使用setGridParam设置jqgrid的url时遇到了一些问题.

我收到消息:"f未定义".

我的设置:

       $("#prices").jqGrid({
    colModel: [
           ...
        ],
    pager: jQuery('#pricePager'),
    ajaxGridOptions: { contentType: "application/json" },
    mtype: 'POST',
    loadonce: true,
    rowTotal: 100,
    rowNum: -1,
    viewrecords: true,
    caption: "Prices",
    height: 300,
    pgbuttons: false,
    multiselect: true,
    afterInsertRow: function (rowid, rowdata, rowelem) {
        // ...
    },
    beforeSelectRow: function (rowid, e) {
      // ...
    },
    onSelectRow: function (rowid, status) {
       // ...
    }
}); 
Run Code Online (Sandbox Code Playgroud)

获取数据:

$("#prices").setGridParam({ datatype: 'json', page: 1, url: '@Url.Action("GridDataPrices")', postData: JSON.stringify(selections) });

$("#prices").trigger('reloadGrid');
Run Code Online (Sandbox Code Playgroud)

响应是非编码的json:

{"total":1,"page":1,"records":100,"rows":[{"id":160602948,"StartDate":"\/Date(1311717600000)\/","Duration":7,"Price":1076.0000,"Code":"code"},{"id":160602950,...}]}
Run Code Online (Sandbox Code Playgroud)

但是,我使用firebug得到以下消息:

"f未定义"

我首先使用addJSONData,但必须替换它,因为我想保留本地排序.

提前致谢.

jqgrid

3
推荐指数
1
解决办法
2万
查看次数

标签 统计

jqgrid ×2