解决方案 »

  1.   

    重新创建store不就好了mystore = Ext.create('Ext.data.JsonStore'楼主也太会省分了,20.。结贴返10,相当于10分问个问题。。
      

  2.   


    版主的的意思是,先定义出myfields和mydata,然后在定义store:
    var mystore = Ext.create('Ext.data.JsonStore', {
         fields:myfields,
         data:mydata
    });
    这样吗? 其实我也这么做过, 貌似还是不行,版主看看是不是我myfields创建的有问题啊分的事嘛。。我不知道行情啊。。
      

  3.   

        Ext.Ajax.request({
            url: this.myurl,
            async: false,
            params: {
                argu: this.myargu
            },
            success: function (response) {
                var json = Ext.JSON.decode(response.responseText);
                var myfields = [];
                var mynamefield = [{ name: 'name', type: 'date', dateFormat: 'Y-m-d H:i:s'}];
                myfields.push(mynamefield);
                for (var k in json.datas[0]) {
                    if (k == 'name') continue;
                    else {
                        myfields.push([k]);
                    }
                }
                alert(myfields[1]);
                //mystore.fields = myfields;            mystore = Ext.create('Ext.data.JsonStore', { fields: myfields, data: json.datas });
            },
      

  4.   

            var myfields = [];
            var mydata = [];
            Ext.Ajax.request({
                url: this.myurl,
                async: false,
                params: {
                    argu: this.myargu
                },
                success : function(response) {
                    var json = Ext.JSON.decode(response.responseText);
                    mydata = json.datas;                var mynamefield = {name: 'name', type: 'date', dateFormat: 'Y-m-d H:i:s'};
                    myfields.push(mynamefield);
                    for(var k in json.datas[0]){
                        if(k == 'name') continue;
                        else {
                            myfields.push(k);
                        }
                    }
                },
                failure : function(request) {
                    Ext.MessageBox.show({
                        title : '操作提示',
                        msg : "连接服务器失败",
                        buttons : Ext.MessageBox.OK,
                        icon : Ext.MessageBox.ERROR
                    });
                },
                method : 'get'
            });
            alert(myfields[0]['name']);
            alert(myfields[1]);
            var mystore = Ext.create('Ext.data.JsonStore', {
                fields: myfields,
                /*fields: [
                    {name: 'name', type: 'date', dateFormat: 'Y-m-d H:i:s'},
                     'value'
                ],*/
            });
            mystore.loadData(mydata);我2楼说之前我这么做之所以没有成功,是由于
    var mynamefield = [{ name: 'name', type: 'date', dateFormat: 'Y-m-d H:i:s'}];
    这一句写错了,我改成
    var mynamefield = { name: 'name', type: 'date', dateFormat: 'Y-m-d H:i:s'};
    这样就可以了。