如何使Dajax回调成为作用域对象
我似乎找不到一种方法让django dajaxice在最初调用的同一作用域对象中进行回调如何使Dajax回调成为作用域对象,ajax,django,extjs,Ajax,Django,Extjs,我似乎找不到一种方法让django dajaxice在最初调用的同一作用域对象中进行回调 MyViewport = Ext.extend(MyViewportUi, { initComponent: function() { MyViewport.superclass.initComponent.call(this); }, LoadRecordsCallback: function(data){ if(data!='DAJAXICE_E
MyViewport = Ext.extend(MyViewportUi, {
initComponent: function() {
MyViewport.superclass.initComponent.call(this);
},
LoadRecordsCallback: function(data){
if(data!='DAJAXICE_EXCEPTION')
{ alert(data); }
else
{ alert('DAJAXICE_EXCEPTION'); }
},
LoadRecords: function(){
Dajaxice.Console.GetUserRecords(this.LoadRecordsCallback);
}
});
var blah = new MyViewport();
blah.LoadRecords();
我在django上,喜欢django dajaxice的调用语法。我正在使用Extjs 3.2并尝试传递一个Ext.createCallback,但Dajax返回的eval似乎只需要一个用于回调的字符串。我对django一点都不熟悉,但我想我理解这个问题 API似乎要求您传递一个字符串,该字符串将作为函数调用进行求值,因此您必须传递函数名,而不是函数本身
这反过来意味着它必须是一个在窗口范围内有意义的名称——要么是在Ext类之外定义的函数(例如“myGlobalFunction”),要么是可以作为变量访问的Ext类的成员函数(例如“window.blah.LoadRecordsCallback”)BozoJoe,这应该可以工作
MyViewport = Ext.extend(MyViewportUi, {
initComponent: function() {
MyViewport.superclass.initComponent.call(this);
},
LoadRecordsCallback: function(data){
if(data!='DAJAXICE_EXCEPTION')
{ alert(data); }
else
{ alert('DAJAXICE_EXCEPTION'); }
},
LoadRecords: function(){
Dajaxice.Console.GetUserRecords('blah.LoadRecordsCallback');
}
});
var blah = new MyViewport();
blah.LoadRecords();
豪尔赫:我相信到目前为止,你已经把我的变化拉了进来,这使我的要求得以实现。非常感谢!在这里我想给你的答案信用,假设张贴的答案不是我需要的。