Heim >Web-Frontend >js-Tutorial >Wie kann ich jQuery-Ajax-Anfragen stornieren?

Wie kann ich jQuery-Ajax-Anfragen stornieren?

Susan Sarandon
Susan SarandonOriginal
2024-12-29 05:53:13644Durchsuche

How Can I Cancel jQuery Ajax Requests?

Ajax-Anfragen mit jQuery stornieren

jQuery bietet eine praktische Möglichkeit, Ajax-Anfragen zu stornieren, bevor Sie eine Antwort erhalten. Um dies zu erreichen, können wir die Methode abort() nutzen.

xhr.abort()

jQuery Ajax-Methoden geben im Allgemeinen ein XMLHttpRequest-Objekt (xhr) zurück. Das xhr-Objekt stellt eine abort()-Methode bereit, mit der Sie die Anfrage abbrechen können.

Diese Methode funktioniert unabhängig davon, ob die Anfrage gesendet wurde oder noch in Bearbeitung ist:

var xhr = $.ajax({
    type: "POST",
    url: "some.php",
    data: "name=John&location=Boston",
});

// Cancel the request
xhr.abort();

jqXHR-Objekt in jQuery 1.5

In jQuery-Versionen 1.5 ist das zurückgegebene Objekt ein Wrapper für das native XMLHttpRequest-Objekt, bekannt als jqXHR. Die abort()-Methode wird weiterhin verfügbar gemacht, sodass der obige Code weiterhin funktioniert.

Versprechen in jQuery 3

jQuery 3 führte Versprechen mit zusätzlichen Methoden ein, einschließlich Abort. Der obige Code bleibt funktionsfähig, aber das zurückgegebene Objekt ist kein XMLHttpRequest mehr.

Hinweis: xhr.abort() funktioniert weiterhin in jQuery 3.x. Die frühere Behauptung, dass dies nicht der Fall sei, ist unzutreffend. Weitere Informationen finden Sie im jQuery-GitHub-Repository.

Das obige ist der detaillierte Inhalt vonWie kann ich jQuery-Ajax-Anfragen stornieren?. 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