Servlet数据未加载到extjs中的变量中

时间:2013-09-19 05:06:47

标签: javascript ajax extjs

在我的代码中,我使用ajax请求从javascript调用servlet。 Servlet数据显示在成功函数的messegebox中。但它没有加载到javascript中的变量myData。来自servlet的数据是json格式。请帮我。这是我的代码。

var myData=null;
Ext.Ajax.request({
    url: 'MyDataServlet',
    method:'GET',
    loadMask: true,
    scope: this,
    success: 
    function ( result, request ) { 
      Ext.MessageBox.alert('success', result.responseText); 
       myData =Ext.decode(result.responseText);
       console.log(myData);
       store.loadData(myData);

    },
    failure: 
        function ( result, request) { 
            Ext.MessageBox.alert('Failed', result.responseText); 
    } 
});

1 个答案:

答案 0 :(得分:0)

“AJAX”中的第一个“A”代表“异步”,这意味着应用程序流在服务器发回响应之前继续(我认为“fire and forget”是一个有用的类比)。 在您的情况下,myData仅在响应到达后分配,并且不能假设其余代码在此之前执行。无论您要使用myData做什么,都需要通过success回调来调用它。