繁体   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