首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > Ajax >

通过extjs.ajax.request()返回值不能赋值给变量

2012-02-24 
通过extjs.ajax.request()返回值不能赋值给变量 - Web 开发 / Ajax就是我用extjs.ajax.request()从后台得

通过extjs.ajax.request()返回值不能赋值给变量 - Web 开发 / Ajax
就是我用extjs.ajax.request()从后台得到一个值,要赋值给var userName 

现在是在下面的代码中 这个userName没有值 

代码:

JScript code
var userName='';Ext.Ajax.request({            url:"index.do?action=getUserName",            method:'POST',             success: function(response,action){                                         userName=    Ext.util.JSON.decode(response.responseText).data.msg;//这里的userName已经有值                                             },             failure: function(response,options){                                    RS.failueDeal();            }        });    Ext.Msg.alert('信息2',userName);//这里userName没有值 


[解决办法]
Ext.Ajax 是异步的吧?等 request 返回以后再观察 userName 的值。
[解决办法]
Ext.Ajax.request是异步的,要在success里面才能活的返回的值,也就是说Ext.Msg.alert('信息2',userName)要放在success里面
[解决办法]
执行 Ext.Msg.alert('信息2',userName); 的时候
还没有执行 userName = Ext.util.JSON.decode(response.responseText).data.msg;

chang to


userName = Ext.util.JSON.decode(response.responseText).data.msg;
Ext.Msg.alert('信息2',userName);
[解决办法]
JScript code
usserName='';  //不要用var声明全局变量Ext.Ajax.request({            url:"index.do?action=getUserName",            method:'POST',             success: function(response,action){                                         userName=    Ext.util.JSON.decode(response.responseText).data.msg;                                         //    Ext.Msg.alert('信息',name);                                          //    return name;                                             },             failure: function(response,options){                                    RS.failueDeal();            },            scope:this        });    Ext.Msg.alert('信息2',userName); //这里得不到值 

热点排行