ext 执行时间差的问题

本人在使用EXT时.有这样一段代码
Ext.extend(ext.moduel,{
id:'',
moduleid:'',
text:(function(){
var _text = this;
Ext.Ajex.request({
url:'xx.action'
success:function(response){
var data = ext.util.json.decode(response.responseText)
_text.text = data.success;
}
});
return _text.text
})()
})
想让text属性的值为ext.ajax.request请求成功后返回的值 可是将return 语句写在成功后的方法里也就是 success里面跟本不返回.写在现在的位置上.返回的是未定义因为请求没有完成 这个是用setTimeout知道的。.但我将return语句写在setTimeout里面又没有返回了..现在就想达到这个方法执行后将text属性值设为请求后回来的值.请高手帮助.谢谢

又是基本概念搞不清的悲剧啊:(
最好的方式是你为该组件的render事件注册一次性监听函数,该函数执行ajax调用获取数据,并在success函数内为组件赋值

不如在外边做异步然后在callback里面xx.setText('xx');
如果你是struts跳转到本页的话,直接在action里面定义个getText方法,这边
text : ''搞定