[英]Code after $.post() is executed before post-request is finished
我試圖使用發布請求(jQuery的$ .post)從服務器獲取數據,並將其分配給JavaScript變量。
代碼如下:
function getData() {
var zones = DUMMY_zones;
var workers = [];
console.log("1");
$.post('server/main.php', {info: 'req_workers'}, function(result) {
var result = JSON.parse(result);
console.log("2");
});
console.log("3");
return [zones, workers];
}
但是奇怪的是,返回是在$ .post請求結束之前執行的,因此workers
是未定義的變量。 控制台輸出如下:
ppe_c_js.js:82 1
ppe_c_js.js:90 3
ppe_c_js.js:85 2
如何順序執行代碼?
謝謝!
您可以使jquery post synchronous
。 但這是一個壞習慣。 因此,在操作過程中,您的瀏覽器將處於凍結狀態。
$.ajax({ type: 'POST', url: url, data: data, success: success, dataType: dataType, async:false });
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.