问题描述
|
我需要将ajax响应分配给全局变量,以便我可以在整个应用程序中使用它。明显的问题是ajax请求是异步的,因此使事情变得复杂。
我曾尝试在ajax调用之前初始化一个对象,然后在成功内部分配响应氟利昂,但这也不起作用。
有任何想法吗?
范例程式码
var p = {};
loadLang(\'en\');
function loadLang(code) {
Ext.Ajax.request({
url : \'/LoadLanguage.html\',method : \'POST\',params :{\'code\':code},timeout : 250,success : function(response,opts) {
obj = Ext.decode(response.responseText);
p = obj;
},callback : function(o,s,r)
{
}
});
}
解决方法
var myValue={item:\"pie\"};
Ext.Ajax.request({
url: \'test.php\',params: {
id: 1
},success: function(response){
alert(response);
window.myValue.response=response; //yay for global scope.
console.log(window.myValue);//This has to be here,//else it gets logged before the call gets completed.
}
});