我想理解下面的 AJAX 调用complete()
method;
当我更换时complete()
with success()
,我得到一个空的响应文本就像 AJAX 一样error()
method.
另一方面,当我离开complete()
方法就在那里,一切都按预期进行。
是那个吗success()
返回早于complete()
?
$("#formnaw").submit(function() {
var fnc = invoerFnc.attr("value");
var vnaam = invoerVnaam.attr("value");
var anaam = invoerAnaam.attr("value");
var str1 = invoerStr1.attr("value");
var nr1 = invoerNr1.attr("value");
var pc1 = invoerPc1.attr("value");
var pl1 = invoerPl1.attr("value");
var tel1 = invoerTel1.attr("value");
var mob1 = invoerMob1.attr("value");
var em1 = invoerEm1.attr("value");
var goknop = $("#formnaw > .instelling_go");
//we deactiveren de submit knop tijdens het verzenden
goknop.attr({
disabled: true
});
goknop.blur();
//stuur de post variabelen naar livetabs.php
$.ajax({
type: "POST",
url: "registraties/instellingenact.php",
data: "actie=wijzignaw&vnaam=" + vnaam + "&anaam=" + anaam + "&functie=" + fnc + "&straat=" + str1 + "&nr=" + nr1 + "&postcode=" + pc1 + "&plaats=" + pl1 + "&tel=" + tel1 + "&mob=" + mob1 + "&email=" + em1,
timeout: 5000,
success: function(data, textStatus) {
alert('bij success');
//doe iets
} //EINDE success
,
error: function(XMLHttpRequest, textStatus, errorThrown) {
if (textStatus == 'timeout') {
//doe iets
} else if (textStatus == 'error') {
//doe iets
}
//her-activeer de zend knop
goknop.attr({
disabled: false
});
} //EINDE error
,
complete: function(data) {
updatelijst.append(data.responseText + "<br>");
if (data.responseText.indexOf("Fout") != -1) {
$('#formnaw').find('td.foutnr1').prepend(data.responseText);
} else {
updatelijst.animate({
opacity: 'show'
}, 1000, function() {});
}
//her-activeer de zend knop
goknop.attr({
disabled: false
});
} //EINDE complete
}); //EINDE ajax
//we stoppen het standaard gedrag van een submit, zodat de pagina niet wordt vernieuwd.
return false;
});
是那个吗success()
返回早于complete()
?
Yes;阿贾克斯success()
方法在之前运行complete()
method.
下图展示了处理流程:
重要的是要注意
...有关 AJAX 事件的更多详细信息here https://api.jquery.com/Ajax_Events/.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)