优化AJAX调用

时间:2015-01-11 20:27:41

标签: jquery ajax

我对AJAX很新(特定于jQuery AJAX),我想发布一个PHP函数(通过WordPress)3次。而不是发送3个POST请求,有没有办法只调用合并AJAX调用?

目前我有以下内容:

$.ajax({
    url: ajaxurl,
    async: false,
    cache: false,
    type: "POST",
    cache: false,
    data: { action: 'box', id: box_id, target: "float", value_aj: "none" }
});

$.ajax({
    url: ajaxurl,
    async: false,
    cache: false,
    type: "POST",
    cache: false,
    data: { action: 'box', id: box_id, target: "width", value_aj: "1499" }
});

$.ajax({
    url: ajaxurl,
    async: false,
    cache: false,
    type: "POST",
    cache: false,
    data: { action: 'box', id: box_id, target: "margin", value_aj: "auto"}
});

当然有更好的方法吗?基本上,接收数据的功能只是发布到文本文件。

有时没有异步,它也只会运行第三个AJAX调用吗?所以我提出异步,但显然会阻止直到3完成(这很糟糕)。

在一次通话中是否有更优化的方法?

感谢。

1 个答案:

答案 0 :(得分:1)

它和OP一样,但是async。并使用ajaxSetup

$.ajaxSetup(
    {
        url: ajaxurl, 
        cache: false 
    }
);

$.ajax({
    type: "POST",
    data: { action: 'box', id: box_id, target: "float", value_aj: "none" }
    success: function(){
        $.ajax({
            type: "POST",
            data: { action: 'box', id: box_id, target: "width", value_aj: "1499" }
            success: function(){
                $.ajax({
                    type: "POST",
                    data: { action: 'box', id: box_id, target: "margin", value_aj: "auto"}
                });
            }
    });
    }
});