Heim >Web-Frontend >js-Tutorial >Der Unterschied zwischen Erfolg und Abschluss in jQuery.ajax

Der Unterschied zwischen Erfolg und Abschluss in jQuery.ajax

巴扎黑
巴扎黑Original
2018-05-14 15:05:301941Durchsuche

$.ajax({
      type: "post",
      url: url,
      dataType:'html',
      success: function(data) { },
     complete: function(XMLHttpRequest, textStatus) { },
     error: function(){}
});

Erfolg: Funktion wird aufgerufen, wenn die Anfrage erfolgreich ist. Diese Funktion ruft einen Parameter ab: die vom Server zurückgegebenen Daten. Die Funktion wird aufgerufen, wenn die Anfrage erfolgreich ist, also Status==200.
complete: Funktion wird aufgerufen, wenn die Anfrage abgeschlossen ist. Diese Funktion erhält zwei Parameter: das XMLHttpRequest-Objekt und eine Zeichenfolge, die den Typ des Anforderungserfolgs beschreibt. Die Funktion wird aufgerufen, wenn die Anfrage abgeschlossen ist, d. h. Status==404, 403, 302....

Achten Sie also beim Schreiben erfolgreicher oder vollständiger Methoden auf die übergebenen Parameter und verwenden Sie die übergebenen Parameterobjekte, um unsere Probleme zu lösen

Parameterliste:

Parametername Typ Beschreibung
URL String (Standard: aktuelle Seitenadresse) Die Adresse zum Senden der Anfrage.
Typ String (Standard: „GET“) Anforderungsmethode („POST“ oder „GET“) , der Standardwert ist „GET“. Hinweis: Andere HTTP-Anfragemethoden wie PUT und DELETE können ebenfalls verwendet werden, werden jedoch nur von einigen Browsern unterstützt.
Timeout Zahl Legen Sie das Anfrage-Timeout in Millisekunden fest. Diese Einstellung überschreibt die globale Einstellung.
async Boolean (Standard: true) Standardmäßig sind alle Anfragen asynchrone Anfragen. Wenn Sie synchrone Anfragen senden müssen, legen Sie diese Option auf „false“ fest. Beachten Sie, dass eine synchrone Anfrage den Browser sperrt und der Benutzer warten muss, bis die Anfrage abgeschlossen ist, bevor andere Vorgänge ausgeführt werden können.
beforeSend Funktion Funktion, die das XMLHttpRequest-Objekt vor dem Senden der Anfrage ändern kann, z. B. das Hinzufügen benutzerdefinierter HTTP-Header . Das XMLHttpRequest-Objekt ist der einzige Parameter.
function (XMLHttpRequest) {         this; // the options for this ajax request
         }
Cache Boolean (Standard: true) jQuery 1.2 neue Funktion, eingestellt auf false lädt keine Anforderungsinformationen aus dem Browser-Cache.
vollständige Funktion Nach Abschluss der AnfrageRückruffunktion (sowohl bei der Anfrage ob der Anruf erfolgreich ist oder fehlschlägt). Parameter: XMLHttpRequest-Objekt, Erfolgsinformationszeichenfolge.
function (XMLHttpRequest, textStatus) {         this; // the options for this ajax request
         }
contentType String (Standard: "application/x-www-form- urlencoded") Inhaltskodierungstyp beim Senden von Informationen an den Server. Der Standardwert ist für die meisten Anwendungen geeignet.
Daten Objekt,
String
An den Server gesendete Daten. Wird automatisch in das Anforderungszeichenfolgenformat konvertiert. Wird in GET-Anfragen an die URL angehängt. Informationen zum Deaktivieren dieser automatischen Konvertierung finden Sie in der Beschreibung der ProcessData-Option. Muss im Schlüssel-/Wertformat vorliegen. Wenn es sich um ein Array handelt, weist jQuery verschiedenen Werten automatisch denselben Namen zu. Beispielsweise wird {foo:["bar1", "bar2"]} in '&foo=bar1&foo=bar2' konvertiert.
dataType String

Der Datentyp, der voraussichtlich von zurückgegeben wird Server. Wenn nicht angegeben, gibt jQuery automatisch ResponseXML oder ResponseText basierend auf den MIME-Informationen des HTTP-Pakets zurück und übergibt sie als Callback--Funktionsparameter . Verfügbare Werte:

„xml“: Gibt ein XML-Dokument zurück das kann von jQuery verarbeitet werden.

"html": Gibt Nur-Text-HTML-Informationen zurück; enthält Skriptelemente.

"script": Gibt Nur-Text-JavaScript-Code zurück. Ergebnisse werden nicht automatisch zwischengespeichert.

"json": Gibt JSON-Daten zurück.

"jsonp": JSONP-Format. verwenden Beim Aufruf einer Funktion im JSONP-Format, z. B. „myurl?callback=?“, ersetzt jQuery automatisch ? durch den richtigen Funktionsnamen, um die Callback-Funktion auszuführen.

error Function (默认: 自动判断 (xml 或 html)) 请求失败时将调用此方法。这个方法有三个参数:XMLHttpRequest 对象,错误信息,(可能)捕获的错误对象。
function (XMLHttpRequest, textStatus, errorThrown) {         // 通常情况下textStatus和errorThown只有其中一个有值 
         this; // the options for this ajax request
         }
global Boolean (默认: true) 是否触发全局 AJAX 事件。设置为 false 将不会触发全局 AJAX 事件,如 ajaxStart 或 ajaxStop 。可用于控制不同的Ajax事件
ifModified Boolean (默认: false) 仅在服务器数据改变时获取新数据。使用 HTTP 包 Last-Modified 头信息判断。
processData Boolean (默认: true) 默认情况下,发送的数据将被转换为对象(技术上讲并非字符串) 以配合默认内容类型 "application/x-www-form-urlencoded"。如果要发送 DOM 树信息或其它不希望转换的信息,请设置为 false。
success Function 请求成功后回调函数。这个方法有两个参数:服务器返回数据,返回状态
function (data, textStatus) {         // data could be xmlDoc, jsonObj, html, text, etc...
         this; // the options for this ajax request
         }

Das obige ist der detaillierte Inhalt vonDer Unterschied zwischen Erfolg und Abschluss in jQuery.ajax. 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