微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何通过AJAX从PHP文件中获取多个响应?

我的PHP文件执行2个操作:1.将表单中的数据提交到db表,2.发送电子邮件.我想做的是通过ajax显示状态消息.例如:“首先完成操作,请等待第二个”然后当第二个操作完成时显示一个消息“第二个操作也完成”.现在我的ajax看起来像那样.我怎么修改它?

//add status data to form
        form.data('formstatus', 'submitting');

        if (validate()) {
            //send data to server for validation
            $.ajax({
                url: formUrl,
                type: formMethod,
                dataType: "json",
                data: formData,
                success: function (data) { 
                    $.notifyBar({
                        cls: data.status,
                        html: data.message
                    });
                    form.data('formstatus', 'idle');
                }
            });

        }

解决方法:

在成功块中,您可以执行另一个ajax调用.那是最简单的.您可以在.success(),. ajaxSucces(),. complete()或.then()函数中执行此操作:$.ajax(…).success(…);

理想情况下,您可以通过示例将代码嵌入到函数

$.ajax({
    url: formUrl,
    type: formMethod,
    dataType: "json",
    data: formData,
    success: function (data) {
        notifyResponse(data); 
        form.data('formstatus', 'idle');
        sendMail();
    }
});

function sendMail() {
    $.get(mailUrl, function(data) {   // or $.post(...
        notifyResponse(data);
    });
}

function notifyResponse(data) {
    $.notifyBar({
        cls: data.status,
        html: data.message
    });
}

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐