2011-07-13 72 views
3

我读过关于这个问题的一些以前的问题和答案,但不明白为什么不为我工作。我可以看到网格,但它的空和萤火虫不会给我任何错误。jqGrid不显示JSON数据

我的JSON数据是这种形式

{"COLUMNS":["ID","MEMO"],"DATA":[[1,"test"],[2,"test1"],[3,"test2"]]} 

我测试过,使用JSON Validator和数据把它传递

我的初始化代码与jsonReader

jQuery("#invoices").jqGrid({ 
    url:'/bob/index.cfm/invoices/read?format=json', 
    datatype: "json", 
    colNames:['id','memo'], 
    colModel:[ 
     {name:'id', width:255}, 
     {name:'memo', width:290} 
    ], 
    rowNum:10, 
    rowList:[10,20,30], 
    pager: '#invoicespager', 
    sortname: 'id', 
    viewrecords: true, 
    sortorder: "desc", 
    caption:"JSON Example", 
    jsonReader: { 
     repeatitems: false, 
     id: "Id", 
     root: function (obj) { return obj; }, 
     page: function (obj) { return 1; }, 
     total: function (obj) { return 1; }, 
     records: function (obj) { return obj.length; } 
    }  

}); 
jQuery("#invoices").jqGrid('navGrid','#invoicespager',{edit:false,add:false,del:false}); 

回答

5

最JSON数据可以被jqGrid读取。您应该只使用相应的jsonReader。读你的JSON数据,你可以在你的网格使用

jsonReader: { 
    repeatitems: true, 
    id: "0", 
    cell: "", 
    root: "DATA", 
    page: function() { return 1; }, 
    total: function() { return 1; }, 
    records: function(obj) { return obj.length; } 
} 

如果您减少空旷的地方与height: 'auto',你会看到以下内容:

enter image description here

(见the demo