求解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返回的数据是一致的

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

{"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"}]}

这里是四条记录吧,怎么results是3呢,你用的什么工具转的呀,还是自己手写的?

id的问题,你的JsonReader里设了id:'name',因为从后台传过来的name都是一样的,所以会认为只有一条数据,因为id应该是唯一的

拿官网的示例研究对比一下,问题就明白了