簡體   English   中英

WordPress的Ajax與異步錯誤

[英]Wordpress ajax with async false

在WordPress內部,我想在函數外部使用Ajax返回值

function get_login_member($) {
    $.post(ajax_object.ajax_url, {action: 'getloginmember'}, function (data) {
            data = JSON.parse(data);

            if (data['id'] > 0) {
                return data;
            } else {
                return 0;
            }
    });
}

而這個函數從

var row = get_login_member($);

row變量undefined因為它在ajax請求成功之前執行

使用jQuery ajax,可以通過使async:false來完成

有沒有辦法在WordPress內部執行此操作

忘記sycnhronous ajax-最簡單的解決方案是使用回調

function get_login_member($, cb) {
    $.post(ajax_object.ajax_url, {action: 'getloginmember'}, function (data) {
            data = JSON.parse(data);

            if (data['id'] > 0) {
                cb(data);
            } else {
                cb(0);
            }
    });
}

然后

get_login_member($, function(row) {
    // put your code here
}); 

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM