Heim >Web-Frontend >js-Tutorial >Wie kann ich eine Ajax-Anfrage mit jQuery abbrechen?

Wie kann ich eine Ajax-Anfrage mit jQuery abbrechen?

DDD
DDDOriginal
2024-12-25 00:08:19166Durchsuche

How Can I Abort an Ajax Request Using jQuery?

Ajax-Anfragen mit jQuery abbrechen

Bei der Durchführung asynchroner Vorgänge mit Ajax kann es erforderlich sein, eine laufende Anfrage abzubrechen, die noch nicht empfangen wurde eine Antwort. In diesem Artikel wird erläutert, wie Sie dies mit den Ajax-Methoden von jQuery erreichen.

Ajax-Methoden und XMLHttpRequest von jQuery

Die Ajax-Methoden von jQuery erstellen im Wesentlichen ein XMLHttpRequest-Objekt oder ein gleichwertiges Objekt, um es asynchron zu machen HTTP-Anfragen. Das XMLHttpRequest-Objekt stellt die abort()-Methode bereit, mit der Entwickler die laufende Anfrage abbrechen können.

Ajax-Anfragen abbrechen

Um eine Ajax-Anfrage abzubrechen, rufen Sie einfach die XMLHttpRequest ab Objekt aus der Ajax-Methode und rufen Sie dessen abort()-Methode auf. Zum Beispiel:

var xhr = $.ajax({
    type: "POST",
    url: "some.php",
    data: "name=John&location=Boston",
    success: function(msg){
       alert( "Data Saved: " + msg );
    }
});

// Cancel the request
xhr.abort();

Dieser Codeausschnitt zeigt, wie eine laufende Ajax-Anfrage abgebrochen wird.

Aktualisierungen und Überlegungen

Seit jQuery 1.5 ist die Die Ajax-Methode gibt ein jqXHR-Objekt zurück, das das native XMLHttpRequest-Objekt kapselt. Die abort()-Methode kann weiterhin für das jqXHR-Objekt verwendet werden.

In jQuery 3 und höher gibt die Ajax-Methode ein Versprechen zurück, das zusätzliche Methoden bereitstellt, einschließlich Abort. Die Semantik der Verwendung von xhr.abort() bleibt jedoch dieselbe.

Es ist erwähnenswert, dass xhr.abort() trotz früherer gegenteiliger Behauptungen immer noch in jQuery 3.x funktioniert. Weitere Informationen finden Sie im jQuery-Github-Repository.

Das obige ist der detaillierte Inhalt vonWie kann ich eine Ajax-Anfrage mit jQuery abbrechen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn