解决方案 »

  1.   

    不好意思。。我好像犯了一个很低级的错误
    this.items.axes[0].title = '2222';这样修改是可以, 而mytitle却是和图无关的一个变量。那在callback里面应该如何找到title,并且修改呢?
      

  2.   

            var mystore = Ext.create('Ext.data.JsonStore', {
                fields: ['name', 'value'],
                data: [
                    { 'name': 'metric one',   'value':10},
                    { 'name': 'metric two',   'value':7 },
                    { 'name': 'metric five',  'value':27}
                ]
            });
            Ext.Ajax.request({
                url: this.myurl,
                async: false,
                params: {
                    argu: this.myargu
                },
                success : function(response) {
                    var json = Ext.JSON.decode(response.responseText);
                    mystore.data = json.datas;                var myfields =  new Array();
                    var namefield = [{name: 'name', type: 'date', dateFormat: 'Y-m-d H:i:s'}];
                    myfields.push(namefield);
                    for(var k in mystore.data[0]){
                        if(k == 'name') continue;
                        else myfields.push(k);
                    }
                    mystore.fields = myfields;
                },
                failure : function(request) {
                    Ext.MessageBox.show({
                        title : '操作提示',
                        msg : "连接服务器失败",
                        buttons : Ext.MessageBox.OK,
                        icon : Ext.MessageBox.ERROR
                    });
                },
                method : 'get'
            });        this.items.store = mystore;        this.callParent(arguments);上面那段代码是Ext.define一个chart中initComponent: function(){}里面的内容。后来改了改,改成了这一个样子,一开始的mystore,是我作为范本随便写的个store,我的想法是在后面的ajax请求返回的json数据中提取信息填充mystore中的fields和data,然后把mystore作为chart的store。但是最后报错,说“E is undefine”,不知道是哪里错了,还是说我这种方法有问题?