2013-10-26 216 views
0

我需要使用ExtJS 3.4.0庫分配響應值以在JavaScript函數中返回它,函數自然終止而不等待ajax響應,因此count的值始終爲零,我需要知道我是否可以這樣做,或者如果有替代方案。ExtJS 3.4.0等待Ajax響應

感謝

function test() { 
    var count = 0; 
    Ext.Ajax.request({ 
     url: "/Controller/Action", 
     method: "POST", 
     success: function(response) { 
      count = Ext.decode(response.responseText); 
     } 
    }); 

    if (count > 1) { 
     return false; 
    } 

    return true; 
} 

回答

0

您需要添加return語句在你成功的功能:

function test() { 
    var count = 0; 
    Ext.Ajax.request({ 
     url: "/Controller/Action", 
     method: "POST", 
     success: function(response) { 
      count = Ext.decode(response.responseText); 
      if (count > 1) { 
       this.other(false); 
      } 
      this.other(true); 
     }, 
     scope: this 
    }); 
}, 

function other(param){ 
    console.log(param); 
    } 
+0

嗨@Riku謝謝您的回答,一路上你所提到的收益只爲成功函數但不是函數包裝器。 有沒有其他想法? – mmuniz

+0

嘗試我更新的函數調用 – kuldarim