我有兩個js文件,即myJs1.js和myJs2.js。 從myJs1.js調用myJs2.js的一個方法。如何從ajax成功事件返回多個值
我想回到r1
和r2
到結果(myJs1.js)
我已經試過這樣:我 宣佈Ajax調用我加入後Ajax調用和 之前r1
和r2
變量:
return [r1,r2];
但它返回r1
和r2
作爲undefined
。 當我研究了我遇到的問題時,添加async: false
可以工作,但它有很多問題(如瀏覽器凍結)。即使如此,我嘗試了它,仍然無法獲得r1
和r2的值。
注意:我是第一次使用AJAX,因此牢記這一點。
編輯:在js1中有一個ajax調用,在成功事件中調用該方法。我想訪問結果調用另一個方法在JS1
編輯:看這裏的代碼
myJS1:
function method()
{
$.ajax({
type: "GET",
dataType: "json",
url: "http://127.0.0.1:8000/***/***",
success: function(response){
result=methodOfmyJs2(response);
load1(r1); //r1 from result
load2(r2); //r2 from result
}
})
}
myJs2:
function methodOfmyJs2(data)
{
$.ajax({
type: "GET",
data:SomeData,
dataType: "json",
url: "http://127.0.0.1:8000/***/***",
success: function(response){
r1=anotherMethodFromThisJS1(response);
r2=anotherMethodFromThisJS2(response);
result=[r1,r2]
}
})
}
我需要訪問r1和r2的值來調用myJs1的load1和load2方法。
wtf this _is_ jquery –
您不能從異步操作返回值。這個不成立。而你已經在使用jQuery。 – Pointy
可能重複的[如何從異步調用返回響應?](http://stackoverflow.com/questions/14220321/how-do-i-return-the-response-from-an-asynchronous-call) – nem035