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

dm520 2008-12-27 12:07:54
通过extjs.ajax.request()返回值不能赋值给全局变量
...全文
271 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
horizon_cbl 2011-01-04
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 peacock 的回复:]
同一个问题问了4次,每次都是100分,楼主还真有钱!
ajax分为2种,一种是同步,一种是异步,而Ext.Ajax.request是异步的

同步:代码执行完了之后才执行后面的代码
异步:代码刚执行,后面的代码就马上接着执行了,不管前面的代码是否执行完

理解这个原理之后,那么,在异步的情况下,要获得返回信息,就需要在异步执行完之后写代码,也就是在success里面写代码。
[/Quote]
将你接下来要实现的code放在success中或者在回调函数里
horizon_cbl 2011-01-04
  • 打赏
  • 举报
回复
破帖子害人
lumin2 2008-12-30
  • 打赏
  • 举报
回复
但是我是在 Ext.apply(Ext.form.VTypes, {})这个过程里用到request所以不能在回调函数里调用
午夜咖啡男 2008-12-30
  • 打赏
  • 举报
回复
想提供给别的函数调用就把对别的函数的调用从回调方法里调用~
lumin2 2008-12-30
  • 打赏
  • 举报
回复
我也遇到了同样的问题,在回调函数里就可以用那个返回值,但是想把返回值付给一个变量供其他函数调用就不行了
MuBeiBei 2008-12-29
  • 打赏
  • 举报
回复

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); //这里得不到值
peacock 2008-12-29
  • 打赏
  • 举报
回复
同一个问题问了4次,每次都是100分,楼主还真有钱!
ajax分为2种,一种是同步,一种是异步,而Ext.Ajax.request是异步的

同步:代码执行完了之后才执行后面的代码
异步:代码刚执行,后面的代码就马上接着执行了,不管前面的代码是否执行完

理解这个原理之后,那么,在异步的情况下,要获得返回信息,就需要在异步执行完之后写代码,也就是在success里面写代码。
lynn_9527 2008-12-29
  • 打赏
  • 举报
回复
myCon.request({
url: '/Roleuser/Save',
method: "POST",
params: {
rolecid: rolecid,
usercid: usercid

},
scope: this,

callback: function(options, success, response) {
var ret = Ext.util.JSON.decode(response.responseText);
if (ret.success) {
Ext.MessageBox.alert("提示", ret.msg);
this.myOproleRecordStore.reload();
} else {
Ext.MessageBox.alert("提示", ret.msg);
}
}
Even713 2008-12-27
  • 打赏
  • 举报
回复
up

52,782

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 Ajax
社区管理员
  • Ajax
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧