Vorwort Studenten, die JavaScript lernen, wissen, dass AJAX (async javascript und Lassen Sie uns zunächst überprüfen, wie eine Ajax-Netzwerkanforderung in nativem JS gesendet wird Klassisch 4 Schritte1. Native js Ajax Netzwerkanforderung // IE9 und höher // const xhr = new XMLHttpRequest() // IE9 und darunter // const xhr = new ActiveXObject('Mricosoft.XMLHTTP') // Für diese kompatible Schreibmethode können wir eine Funktion verwenden, um die Funktion createXHR() { zu kapseln. var req = null; wenn (Fenster.XMLHttpRequest) { // Wenn Sie dieses XMLHttpRequest-Objekt haben, verwenden Sie einfach req = new XMLHttpRequest(); } anders { // Andernfalls verwenden Sie die Methode IE8 oder höher req = new ActiveXObject("Microsoft.XMLHTTP"); } Rückgabeanforderung; } // Schritt 1: Ein Ajax-Objekt erstellen var xhr = createXHR(); // So erhältst du ein Ajax-Objekt // Schritt 2: Netzwerkanforderungsinformationen konfigurieren xhr.open('get', './demo.php', true) // xhr.open('get/post', 'An welche Adresse möchten Sie die Netzwerkanfrage senden', synchron oder asynchron, der Standardwert ist true für asynchron und false für synchron) // Wenn die Get-Anfrage Parameter hat, müssen diese nach der Adresse aneinandergereiht werden, zum Beispiel './demo.php?id=2&name=sanqi' // Wenn es sich um eine Post-Anfrage handelt, sollten die Parameter in send() eingefügt werden, zum Beispiel: xhr.send('id=2&name=sanqi') // Schritt 3: Netzwerkanfrage senden xhr.send() // // Teil 4: Bestimmen Sie den Antwortstatus und holen Sie die Daten ab xhr.onreadyStateChange = function () { // Dieses Ereignis wird jedes Mal ausgelöst, wenn sich der readyState ändert // Wir prüfen hier, ob der Wert von readyState 4 ist // Und der HTTP-Statuscode ist 200 ~ 299 wenn (xhr.readyState === 4 && /^2\d{2|$/.test(xhr.status)) { // Dies bedeutet, dass die Überprüfung bestanden wurde. // Wir können den Inhalt der Antwort vom Server abrufen. console.log(xhr.response); } } Hier sind die 5 Zustände von readyState
Oben sehen Sie das native JS, das eine Ajax-Netzwerkanforderung sendet. 2. Über Ajax-Netzwerkanforderungen mit jQuery Als wir jQuery lernten, stellten wir fest, dass alle sagten, dass jQuery alles für uns gekapselt hat und wir diese Netzwerkanforderungen nicht schreiben müssen. Trotzdem dürfen wir nicht blind sein und müssen es immer noch im Detail verstehen, bevor wir es verwenden. (1). Verwenden Sie jQuery, um eine Get-Anfrage zu senden Der folgende einheitliche Backend-Code verwendet den Dateinamen: test.php <?php Header('Inhaltstyp:Text/HTML;Zeichensatz=utf-8;'); $id = $_REQUEST['id']; $name = $_REQUEST['name']; $arr = [ 'id' => $id, 'Name' => $Name ]; echo json_encode($arr); ?> Senden einer Get-Anfrage mit jQuery $.get('./test.php','id=999&name=Neuer Eintrag',function (res) { //Der erste Parameter ist die angeforderte Adresse //Der zweite Parameter sind die Daten, die an den Server gesendet werden sollen //Der dritte Parameter ist die Rückruffunktion bei Erfolg, die die vom Dienst zurückgegebenen Daten enthält //Der vierte Parameter ist das Datenformat, das wir erhalten möchten: Es gibt mehrere Optionen: json, text, html, xml, script konsole.log(res); },'json') Sie können sehen, dass die Anfrage erfolgreich gesendet wurde. (2) Senden einer Post-Anfrage mit jQuery $.post('./test.php',{id:123,name:'Post-Anfrage'},Funktion (res) { //Die anderen Parameter hier sind dieselben wie bei der Get-Anfrage //Beachten Sie, dass ich die Übertragungsdaten hier im Objektformat schreibe und die Anfrage erfolgreich gesendet werden kann, d. h. //Unabhängig davon, ob es sich um eine Get-Anfrage oder eine Post-Anfrage handelt, können Sie entweder das Zeichenfolgenformat oder das Objektformat verwenden, wenn Sie Daten an den Server senden möchten console.log(res); },'json') Dies ist die Seite, auf der die Anforderung erfolgreich war (3) Verwenden Sie jQuery, um eine umfassende Ajax-Anfrage zu senden Schauen wir uns zunächst die Syntax an // Verwenden Sie die Methode $.ajax // Sie akzeptiert nur einen Parameter, nämlich ein Objekt. Dieses Objekt führt alle Konfigurationen für die aktuelle Anfrage aus. $.ajax({ url: './ajax', // Erforderlich, angeforderter Adresstyp: 'GET', // Optional, Anforderungsmethode, Standard ist GET (Groß-/Kleinschreibung ignorieren) data: {}, // Optional, der Parameter, der beim Senden der Anfrage mitgeführt werden soll dataType: 'json', // Optional, der Datentyp des erwarteten Rückgabewerts, der Standard ist String async: true, // Optional, ob asynchroner Betrieb aktiviert werden soll, Standard ist true success() {}, // Optional, Rückruffunktion für Erfolg error() {}, // Optional, Rückruffunktion für Fehler cache: true, // Optional, ob zwischengespeichert werden soll, Standard ist true Kontext: div, // Optional, dies zeigt auf die Rückruffunktion, der Standard ist das Ajax-Objekt Status: {}, // Optional, führe die Funktion entsprechend dem entsprechenden Statuscode aus Timeout: 1000, // Optional, Timeout-Ereignis }) Es scheint, dass wir jedes Mal viele Parameter eingeben müssen, aber tatsächlich sind die meisten Parameter optional. Wir müssen sie nur entsprechend der tatsächlichen Situation eingeben. Im Compiler können Sie auch schnell Code generieren, indem Sie direkt Ajax eingeben Ajax-Anforderungscode senden $.ajax({ Typ: "get", URL: "./test.php", Daten: { Ich würde:000, Name: „Demo zum Senden einer $.ajax-Anfrage“ }, Datentyp: "json", Erfolg: Funktion (Antwort) { console.log(Antwort); } }); Öffnen Sie die Webseite und Sie können die Daten sehen, die wir vom Backend zurückerhalten haben Hier sind einige globale Ajax-Funktionen, auch Hook-Funktionen genannt. Dabei handelt es sich um Funktionen, die in einem bestimmten Stadium des gesamten Ajax-Anforderungsprozesses ausgeführt werden und durch jede Ajax-Anforderung ausgelöst werden. 1. ajaxStart , diese Funktion wird ausgelöst, wenn eine beliebige Anfrage gestartet wird $(Fenster).ajaxStart(Funktion () { console.log('Eine Anfrage wurde gestartet') }) 2. ajaxSend , diese Anfrage wird ausgelöst, bevor eine beliebige Anfrage zum Senden bereit ist. $(Fenster).ajaxSend(Funktion () { console.log('Eines wird gerade gesendet') }) 3.ajaxSuccess , diese Funktion wird ausgelöst, wenn eine Anfrage erfolgreich ist. $(Fenster).ajaxSuccess(Funktion () { console.log('Eine Anfrage war erfolgreich') }) 4.ajaxError , diese Funktion wird ausgelöst, wenn eine Anforderung fehlschlägt. $(Fenster).ajaxError(Funktion () { console.log('Eine Anfrage ist fehlgeschlagen') }) 5.ajaxComplete , diese Funktion wird ausgelöst, wenn eine beliebige Anfrage abgeschlossen ist $(Fenster).ajaxComplete(Funktion () { console.log('Eine Anfrage wurde abgeschlossen') }) 6.ajaxStop, diese Funktion wird ausgelöst, wenn eine Anforderung endet $(Fenster).ajaxStop(Funktion () { console.log('Eine Anfrage ist beendet') }) ZusammenfassenDies ist das Ende dieses Artikels über die Zusammenfassung der relevanten Wissenspunkte zu Ajax in jQuery. Weitere relevante Wissenspunkte zu jQuery Ajax finden Sie in den vorherigen Artikeln von 123WORDPRESS.COM oder in den folgenden verwandten Artikeln. Ich hoffe, dass jeder 123WORDPRESS.COM in Zukunft unterstützen wird! Das könnte Sie auch interessieren:
|
<<: Tutorial zur kostenlosen Konfiguration der MySQL 5.7.18-Installationsversion
Inhaltsverzeichnis Was ist ein Einfügepuffer? Was...
Inhaltsverzeichnis 1. Aufgetretene Probleme 2. An...
Inhaltsverzeichnis 1. Installieren und importiere...
Inhaltsverzeichnis 1. Workflow ausführen 2. Grund...
Inhaltsverzeichnis 1minio ist einfach 2 Docker er...
Vorwort Wie wir alle wissen, gehört HTML5 dem Wor...
In diesem Artikel wird der spezifische JS-Code zu...
Lassen Sie mich zunächst erklären, warum der Text...
Wie debuggt man eine Seite auf dem iPad? Wenn Sie ...
Mehrere gängige Paging-Methoden: 1. Rolltreppenme...
Was wir jetzt simulieren, ist ein Master-Slave-Sy...
HTML-Tag: hochgestellt In HTML definiert das <s...
Inhaltsverzeichnis 1. CDN-Einführung 1.1 reagiere...
Inhaltsverzeichnis Überblick 1. useState 1.1 Drei...
Durch E-Mail-Marketing auf Genehmigungsbasis lass...