Tur*_*Ali 5 javascript php ajax jquery
我的 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');
}
});
}
Run Code Online (Sandbox Code Playgroud)
在成功块中,您可以执行另一个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
});
}
Run Code Online (Sandbox Code Playgroud)