esft 2009-06-26 12:03
浏览 214
已采纳

求解ExtJS的jsonreader和httpproxy问题-只能显示最后一行数据

function LoadGrid() {
Ext.lib.Ajax.defaultPostHeader += ";charset=GBK";

//jsonReader
var JsonReader = new Ext.data.JsonReader({
            totalProperty : "results",
            root : "data",
            id : 'name',
            successProperty : "successproperty"
        }, [{
                    name : 'name',
                    mapping : 'name'
                }, {
                    name : 'age',
                    mapping : 'age'
                }, {
                    name : 'sex',
                    mapping : 'sex'
                }, {
                    name : 'fav',
                    mapping : 'fav'
                }, {
                    name : 'birth',
                    mapping : 'birth'
                }]);// 如果name与mapping同名 可以省略mapping


var Httpproxy = new Ext.data.HttpProxy({
            url : 'MyJsp.jsp'
        });// HttpProxy


var ds = new Ext.data.Store({
            proxy : Httpproxy,
            reader : JsonReader
        });

ds.load();

var colModel = new Ext.grid.ColumnModel([{
            header : "姓名",
            width : 120,
            sortable : true,
            dataIndex : 'name'
        }, {
            header : "年龄",
            width : 90,
            sortable : true,
            dataIndex : 'age'
        }, {
            header : "性别",
            width : 110,
            sortable : true,
            dataIndex : 'sex'
        }, {
            header : "爱好",
            width : 120,
            sortable : true,
            dataIndex : 'fav'
        }, {
            header : "生日",
            width : 120,
            sortable : true,
            renderer : Ext.util.Format.dateRenderer('m/d/Y'),
            dataIndex : 'birth'
        }]);

var grid = new Ext.grid.GridPanel({
            store : ds,
            cm : colModel,
            frame : true,
            width : 600,
            height : 450

        });

grid.render('grid');        

}

MyJsp.jsp返回的数据如下
JScript code{"results":3,"successproperty":true,"data":[{sex:"男性",age:"29111",birth:"9/1 12:00am",fav:"fighting123213",name:"XJGZINFO"},
{sex:"男性",age:"2311",birth:"",fav:"fighting123213",name:"XJGZINFO"},
{"sex":"男性","age":"29111","birth":"9/1 12:00am","fav":"fighting123213","name":"XJGZINFO"},
{"sex":"男性","age":"2311","birth":"","fav":"fighting123213","name":"XJGZINFO"}]}

[b]问题补充:[/b]
谢谢chanball的回答
rusults没对上,可是改成4还是只显示一条数据
转换的时候我用了JSONObject
手写和使用JSONObject返回的数据是一致的

  • 写回答

4条回答 默认 最新

  • chanball 2009-06-26 13:11
    关注

    把id:'name'这个去掉就可以了

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)

报告相同问题?

悬赏问题

  • ¥15 基于作物生长模型下,有限水资源的最大化粮食产量的资源优化模型建立
  • ¥20 关于变压器的具体案例分析
  • ¥15 生成的QRCode圖片加上下載按鈕
  • ¥15 板材切割优化算法,数学建模,python,lingo
  • ¥15 科来模拟ARP欺骗困惑求解
  • ¥100 iOS开发关于快捷指令截屏后如何将截屏(或从截屏中提取出的文本)回传给本应用并打开指定页面
  • ¥15 unity连接Sqlserver
  • ¥15 图中这种约束条件lingo该怎么表示出来
  • ¥15 VSCode里的Prettier如何实现等式赋值后的对齐效果?
  • ¥20 keepalive配置业务服务双机单活的方法。业务服务一定是要双机单活的方式