1

我正在尝试在子网格中填充数据,但我无法做到这一点。我想问题是我需要显示从同一个 URL 生成的数据。它是嵌套数据。数据是json。我四处寻找示例,有些指定了对 jsonreader 的需求,有些则完全省略了它。我对 jquery 和 jgrid 很陌生。我希望在展开项目时显示标题字段。我从服务器得到的数据如下:

{"total":18,"page":1,"records":18,"rows":[
    {"Name":"Jane", "Header":[{"Type":"bundle","Selected":"true"}]}

这里我需要在Subgrid的Header中显示信息。主网格显示“行”中的信息。每个“行”都有一个标题信息,当用户单击它时我需要显示它。我设法得到像 [object Object] 这样的显示,但我想我错过了一些东西。我需要解析数组并显示信息:类型和选定。 http://www.trirand.com/blog/?page_id=393/help/subgrid-from-nested-master-grid-data/正是我正在寻找的。

非常感谢任何指针。

下面是我的代码片段:

$("#grid").jqGrid({
    url: '/requestData',
    datatype: "json",
    colNames:['ID', 'Name'],
    colModel:[
        {name:'ID',index:'ID',sorttype:'int'},         
        {name:'Name',index:'Name', width:450}
    ],
    jsonReader : {
        repeatitems:false,
        root: 'rows'
    },
    loadonce:true,      
    viewrecords: true,
    autowidth: true,
    height: 400,    
    rowNum:999,  
    subGrid: true,
    subGridOptions: {
        "plusicon"  : "ui-icon-triangle-1-e",
        "minusicon" : "ui-icon-triangle-1-s",
        "openicon"  : "ui-icon-arrowreturn-1-e",
        //expand all rows on load
        "expandOnLoad" : false
    },
    subGridRowExpanded: function(subgrid_id, row_id) { 
        var subgrid_table_id; 
        subgrid_table_id = subgrid_id+"_t";
        $("#"+subgrid_id).html("<table id='"+subgrid_table_id+"' class='scroll'>"); 
        jQuery("#"+subgrid_table_id).jqGrid({ 
            url: '/requestData', 
            datatype: "json", 
            colNames: ['Header'], 
            colModel: [{
                name:"Header",index:"Header"}
            ], 
            jsonReader: { repeatitems:false,
                          root: "rows" },
            loadonce: true,      
            viewrecords: true,
            rowNum: 999, 
            autowidth: true,
            sortorder: "asc", 
            height: '100%'
        }); 
        jQuery("#"+subgrid_table_id).jqGrid('navGrid',{edit:false,add:false,del:false}) 
   }
});
4

0 回答 0