Es gibt viele Arten von Jquery Ajax Rückgabewerte, wie html, Text, Json, XML-Typen, die wir verwenden können, in AJAXP Verarbeitung direkt anonyme Funktionen nutzt, um direkt zu erhalten, die folgenden organisiere ich ein Beispiel für Jquery Ajax-Rückgabewert für Sie zu beziehen.
Die evocars häufig in Jquery verwendet werden $.ajax (), $.post, $abrufen (), $.load ().
Beispiel
| Der Code lautet wie folgt |
|
| $.Post ("test.jsp", {Name: "Cssrain", Zeit: "2008/01/21"}, / / Daten übergeben werden Funktion (Daten) {} Alert ("Daten zurückgegeben:" + Daten); } ) |
Der Rückgabewert dieser Daten ist, und wir nur noch zu gehen in die Datenverarbeitung Rückgabeergebnis in Funktion (Daten) {} dieser anonyme Funktion
Beispiel $.load)
| Der Code lautet wie folgt |
|
| $ ("#Loadajax"). Last ("http://www.111cn.net. Post", Funktion (ResponseText, TextStatus, XMLHttpRequest) {} Das; //Here dieser Punkt ist der aktuellen DOM-Objekt, das heißt, $ (". Ajax.load") [0] }); ≪ Div-Id = Loadajax > So Sie den Rückgabewert der Last erhalten. |
Beispiel
| Der Code lautet wie folgt |
|
| $.Ajax ({} Typ: "Get", / / die Get-Methode verwendet, um den Hintergrund zugreifen Datentyp: "JSON", / / gibt Daten im JSON-Format URL: "BackHandler.ashx",//the Hintergrund-Adresse für den Zugriff auf Daten: "PageIndex =" + PageIndex, / / zu senden Komplett: Funktion () {$ ("#load"). (Hide); Hide laden wann fordert}, / / Ajax-Anforderung abgeschlossen ist Erfolg: Funktion (msg) {//msg für die zurückgegebenen Daten, Datenbindung Var Daten = msg.table; $...Jeder (Daten, Funktion (I, n) {} Var Zeile = $ ("#template"). Klonen (); Row.find ("#OrderID"). Text (N. Bestell-ID); Row.find ("#CustomerID"). Text (N. Kundennummer); Row.find ("#EmployeeID"). Text (N. Mitarbeiterkennung); Row.find ("#OrderDate"). Text (ChangeDate (N. Bestelldatum)); Wenn (N. Liefertermin! == undefined) row.find ("#ShippedDate"). Text (ChangeDate (N. Liefertermin)); Row.find ("#ShippedName"). Text (N. Name des Cargo-Besitzer); Row.find ("#ShippedAddress"). Text (N. Inhaber Adresse); Row.find ("#ShippedCity"). Text (N. Cargo City); Row.find ("#more"). HTML ("< ein href=orderinfo.aspx?id=" + N. Bestell-ID + "& Pageindex =" + Pageindex +" Weitere </a > "); ROW.ATTR ("Id", "Ready"); //change die ID der Zeile, die die guten Daten bindet Row.appendTo ("#datas"); //added in den Container der Vorlage }); |
Dies ist derjenige, der das JSON-Format wieder.
JQuery Ajax keinen Rückgabewert
In Jquery Ajax-Methode bestimmt nach der Übergabe von Parametern, der Rückruf gibt es zwei Fälle von Erfolgs- und Fehlermeldungen.
Manchmal, ohne die Notwendigkeit, einen Wert zurückgeben, werfen in der Vorlage-Format, legen Sie den Datentyp: "JSON", Parameter, an diesem Punkt, wenn der Ajax-Transfer-Wert korrekt ist, gibt es ein Spezialfall des 200 return Fehler in der erfolgreichen Zustand.
Die Setup-Problem für den Datentyp der Rückgabewert der Methode Ajax war zuvor nicht bemerkt. Wenn gibt es keine Callback-Parameter, gibt es in der Regel keine Notwendigkeit, den Datentyp des Rückgabewerts festgelegt. Wenn die Einstellungen falsch gehen, sind sie in der Regel falsch berichtet. An dieser Stelle die direkte Kündigung der Datentyp: "JSON",
Die richtige Vorlage für die Ajax-Methode ohne Rückgabewert:
| Der Code lautet wie folgt |
|
| $.Ajax ({} Typ: "Post", URL: "index.php" Daten: "Id =" + Uid, Erfolg: Funktion () {} Alarm (1); }, "Error:"-Funktion () {} Alarm (0); } }); |
Beispiel
JQuery Ajax überprüft den Namen des Benutzers. Postfach, Bestätigungs-code
| Der Code lautet wie folgt |
|
| Function Check_email) { Var Check_email = $ ("#reg_mail"). (Val); Var Reg = / ^ ([ein-zA-Z0 - 9_-]) + @ ([ein-zA-Z0 - 9_-]) + (/. [ A-zA-Z0 - 9_-] {2,3}) {1,2}) $/; Flag = Reg.test (Check_email); Wenn (Flag) { Var Email_value = $ ('#reg_mail'). (Val); $Abrufen ("[var.base_url]register.php", {Check_name: "e-Mail", Check_value:email_value, Async:false}, funktionieren (JSON) {} $ ('#Res_mail'). HTML (JSON); Wenn (Json == "OK") { $ ('#Res_mail'). HTML ("< Schriftfarbe ="grüne"Schriftgröße = ' _ diese e-Mail-Adresse registriert werden kann!" "); Gibt true zurück; } Else {} $ ('#Res_mail'). HTML ("< Schriftfarbe = 'Rot' Schriftgrad = ' _ diese e-Mail registriert worden!" "); Return false; } }); } Else {} $ ("#Res_mail"). HTML ("< Schriftfarbe = 'rot' Schriftgrad = ' a '/ ' s _ Bitte geben Sie die korrekte e-Mail-Adresse!" "); Return false; } } |
So hat es angefangen. Allerdings ist es immer unmöglich, die zurückgegebenen Status True oder False ein undefinierter um zu überprüfen, eine Vielzahl von Informationen zurück zu bekommen. Ein Beitrag über CSDN ist klassisch:
| Der Code lautet wie folgt |
|
| Var Boolean = False; $Abrufen (Daten) {//understanding ist nicht schwierig, solange Sie zunächst wissen, dass die Methoden in Jquery alle Jquery oder Objekte angegeben von Jquery zurück. JQuery Ajax Methoden wie Get und post Standard sind asynchrone Interaktion, so dass die Get-Methode zurückgegeben wird, wenn es ist noch nicht fertig, und die BL die BL ist = falsch, dass Sie definieren, so dass es immer "false"; zurückgibt ein Wert für den Wechsel zum Sync sollte. So um den richtigen Wert von BL zurück zu setzen, Sie die Get-Methode ändern müssen. Rückgabewert Verarbeitung erfolgt in der Regel nicht in der Ajax-Methode. Sie können verwenden $.data ("BL", Bl); Ihr Wert speichern und dann $.data ("BL") verwenden, um den Wert zu nehmen. Wenn (data.indexOf ("wahr") > = 0) {} $ ("#Mid"). HTML ("Anmeldung erfolgreich"); BL = True; $.Data ("BL", BL); } Else {} $ ("#Mid"). HTML ("User Name oder Kennwort Fehler"); BL = False; $.Data ("BL", BL); } }); Rückkehr BL; |
Dadurch können Sie den zurückgegebenen Zustand zu erhalten. Speichert Werte mit der Data-Methode. Und dann bekommen es. Es geht auch anders.
| Der Code lautet wie folgt |
|
| $Abrufen (Daten) setzt den Transportmodus auf synchroner transport |
Die letzte Änderung Funktion ist wie folgt. Test OK.
| Der Code lautet wie folgt |
|
| Function Check_email) { Var Check_email = $ ("#reg_mail"). (Val); Var Reg = / ^ ([ein-zA-Z0 - 9_-]) + @ ([ein-zA-Z0 - 9_-]) + (/. [ A-zA-Z0 - 9_-] {2,3}) {1,2}) $/; Flag = Reg.test (Check_email); Wenn (Flag) { Var Email_value = $ ('#reg_mail'). (Val); $Abrufen ("[var.base_url]register.php", {Check_name: "e-Mail", Check_value:email_value, Async:false}, funktionieren (JSON) {} $ ('#Res_mail'). HTML (JSON); Wenn (Json == "OK") { $ ('#Res_mail'). HTML ("< Schriftfarbe ="grüne"Schriftgröße = ' _ diese e-Mail-Adresse registriert werden kann!" "); Tamp_email = True; $.Data ("Tamp_email", Tamp_email); $ ('#Sub_reg'). Attr ("deaktiviert", false); } Else {} $ ('#Res_mail'). HTML ("< Schriftfarbe = 'Rot' Schriftgrad = ' _ diese e-Mail registriert worden!" "); Tamp_email = False; $.Data ("Tamp_email", Tamp_email); $ ('#Sub_reg'). Attr ("Disabled", true); } }); Rückkehr Tamp_email; } Else {} $ ("#Res_mail"). HTML ("< Schriftfarbe = 'rot' Schriftgrad = ' a '/ ' s _ Bitte geben Sie die korrekte e-Mail-Adresse!" "); Return false; } } |