Es scheint, dass es keine Fehlerbehandlung im Jquery.Form-Plugin gibt, was sehr frustrierend ist. Obwohl die Dokumentation besagt, dass wir die Optionen von $ .ajax verwenden können, kann ich die Option "error" immer noch nicht verwenden, wenn der Server einen Fehler zurückgibt, insbesondere die Serien 500 und 400. Kann dieses Plugin überhaupt keinen Fehler vom Server verarbeiten oder ist es ein Bug, etc? Kann mir bitte jemand sagen, wie ich Fehler (400, 500, etc) mit diesem Plugin umgehen kann? Ich brauche deine Hilfe ... Alles was ich will ist eine einfache Fehlerbehandlung ... Danke.jquery form plugin, keine Fehlerbehandlung
$("#uploadingImg").hide();
var options = {//Define ajax options
type: "post",
target: "#responsePanel",
beforeSend: function(){
$("#uploadingImg").show();
},
complete: function(xhr, textStatus){
$("#uploadingImg").hide();
},
success: function(response, statusString, xhr, $form){
// I know what to do here since this option works fine
},
error: function(response, status, err){
// This option doesn't catch any of the error below,
// everything is always 'OK' a.k.a 200
if(response.status == 400){
console.log("Sorry, this is bad request!");
}
if(response.status == 601){
sessionTimedOut();
}
}
}
$("#polygonUploadForm").submit(function(){
$(this).ajaxSubmit(options); // Using the jquery.form plugin
return false;
});
+1 * Dies sollte die akzeptierte Antwort sein. –
+1. Beachten Sie, dass dies nur dann ein Problem darstellt, wenn die iFrame-Problemumgehung verwendet wird, dh in Browsern, die die HTML5-Funktionen nicht korrekt unterstützen. (* hust * ie * hust *) –
+1 Ich mag es wirklich, wenn Leute sich Zeit nehmen, ihr Wissen zu teilen. Vielen Dank @JCotton, ich schätze Ihre klare und informative Antwort :) – will824