1

我有一个条形柱形图。我希望​​当我单击该列时,它将显示它的值并调用另一个函数,我将通过 ajax 调用数据库。

当我单击该列时,会显示值但第二部分,即第二个函数调用未完成..这是我的控制器代码...

initializedEvents: false,
init: function() {
    this.control({
        '#barColumnChart': {
            afterlayout: this.afterChartLayout
        }
    });
},
afterChartLayout: function(){
    if(this.initializedEvents==true) return;
    this.initializedEvents=true;
    Ext.getCmp('barColumnChart').series.items[0].on('itemmousedown',function(obj){
        var barData=obj.storeItem.data['source']+ ' &' + obj.storeItem.data['count'];

            // I want to call the dataBaseCall function here

    });
},
dataBaseCall: function(barData){
    alert(barData);
}
4

1 回答 1

0

尝试这个

afterChartLayout: function(){
    var me = this;
    if(this.initializedEvents==true) return;
    this.initializedEvents=true;
    Ext.getCmp('barColumnChart').series.items[0].on('itemmousedown',function(obj){
        var barData=obj.storeItem.data['source']+ ' &' + obj.storeItem.data['count'];

            me.dataBaseCall(barDat);

    });
},
dataBaseCall: function(barData){
    alert(barData);
}

您也可以将控制器范围添加到事件中,但我个人更喜欢这个。

于 2013-05-07T07:14:20.090 回答