Extjs4 如何从控制器使用ajax调用Javaservlet
我创建了一个条形柱形图。。在我的控制器中,我想调用一个servlet。。在我的函数中,我使用一个变量,该变量使用getStore('StoreName')保存store的instacne。。现在我该如何称呼ajax???请任何人帮帮我。。这是我的控制器Extjs4 如何从控制器使用ajax调用Javaservlet,extjs4,extjs4.1,extjs-mvc,Extjs4,Extjs4.1,Extjs Mvc,我创建了一个条形柱形图。。在我的控制器中,我想调用一个servlet。。在我的函数中,我使用一个变量,该变量使用getStore('StoreName')保存store的instacne。。现在我该如何称呼ajax???请任何人帮帮我。。这是我的控制器 Ext.define('Gamma.controller.ControlFile', { extend : 'Ext.app.Controller', //define the stores stores : ['BarColumn',
Ext.define('Gamma.controller.ControlFile', {
extend : 'Ext.app.Controller',
//define the stores
stores : ['BarColumn','RadarView','VoiceCallStore','SMSCallStore','MMSCallStore','GPRSUsageStore'],
//define the models
models : ['BarCol','radar','VoiceCallModel','SMSCallModel','MMSCallModel','GPRSUsageModel'],
//define the views
views : ['BarColumnChart','LineChart','RadarChart','VoicePie','SMSPie','MMSPie','GPRSPie'],
initializedEvents: false,
init: function() {
this.control({
'#barColumnChart': {
afterlayout: this.afterChartLayout
}
});
},
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(barData);
});
},
dataBaseCall: function(barData){
var bar=getStore('BarColumn');
//here I want to call the ajax
}
});
这是我的商店的条形码
Ext.define('Gamma.store.BarColumn', {
extend: 'Ext.data.Store',
model: 'Gamma.model.BarCol',
autoLoad: true,
pageSize: 100,
proxy: {
type: 'ajax',
url: '../TopCount', //this my servlet name
reader: {
type: 'json',
root: 'topList',
totalProperty: 'totalCount',
successProperty: 'success'
}
}
});
在控制器块中使用以下代码 数据库调用:函数(barData){ var bar=getStore('BarColumn')
}好的,谢谢您的回复,哈里哈兰。。但是我应该在何处以及如何调用ajax方法来调用servlet???@Subhajyoti它将自动调用,因为您将配置设置为autoLoad:true in store。若您指定autoLoad:false,那个么您需要手动调用load方法来调用ajax请求。所有servlet请求都将由存储区中的代理处理(您在其中指定URL)。更详细地说,您正在使用define类定义存储,当您为该define调用create时,此时只有请求将被发送到servlet。
var store = Ext.create('Gamma.store.BarColumn');
// to create storeid use below code
var store = Ext.create('Gamma.store.BarColumn', {storeId: 'BarColumnID'});