Heim > Web-Frontend > js-Tutorial > Hauptteil

Zusammenfassung der Wissenspunkte von jQuerys AJAX

零到壹度
Freigeben: 2018-03-24 14:23:40
Original
1394 Leute haben es durchsucht

Dieses Mal hat der Herausgeber die Wissenspunkte von AJAX in jQuery für alle zusammengestellt. Das Folgende ist eine Zusammenfassung der Wissenspunkte.

1. AJAX-Konzept
Asynchrones Javascript und XML (asynchrones JavaScript und XML)
AJAX ist keine Sprache, sondern eine Möglichkeit, interaktive Webanwendungen zu erstellen Entwicklungstechnologie
AJAX ist eine Kombination aus Javascript, Austausch und verwandte Operationen;
3. Verwenden Sie das XMLHttpRequest-Objekt für die asynchrone Datenkommunikation
4 >5. Verwenden Sie JavaScript, um alle Daten zu binden und zu verarbeiten.
Was ist XML?
XML bezieht sich auf Extensible Markup Language (EXtensible Markup Language).
XML ist eine Auszeichnungssprache, die HTML sehr ähnlich ist.
XML ist konzipiert um Daten zu übertragen, nicht um Daten anzuzeigen
Das XML-Tag ist nicht vordefiniert. Sie müssen die Beschriftungen selbst definieren.
XML ist so konzipiert, dass es selbstbeschreibend ist.
XML ist ein vom W3C empfohlener Standard
Was ist XSLT?
XSLT bezieht sich auf XSL-Transformationen [1]
XSLT ist der wichtigste Teil von XSL
XSLT kann ein XML-Dokument in ein anderes XML-Dokument konvertieren
XSLT verwendet XPath bei der XML-Navigation im Dokument
🎜>
Benutzerbetriebsprozess:
Benutzerbrowser->JavaScript-Instanziierung des XmlHttpRequest-Objekts->AJAX-Engine->http-Anfrage->Webserver->Backend-Geschäftssystem
Systemrückgabeprozess :
Backend-Geschäftssystem->Backend-Server->Webserver->HTML-, XML-, JSON-Daten->AJAX-Engine->HTML+CSS (Wel-Browser)->Benutzerbrowser




3. Vor- und Nachteile von AJAX:Vorteile der asynchronen Verarbeitung von AJAX:Reduzieren Sie die Belastung des Servers im Allgemeinen nur, was benötigt wird Server. Daten
Keine Aktualisierung der Seitenaktualisierung, wodurch die Wartezeit der Benutzer verkürzt wird
Bessere Kundenerfahrung, einige Serverarbeiten können auf den Client übertragen werden, wodurch Netzwerkressourcen gespart und die Benutzererfahrung verbessert werden
Keine Plattformeinschränkungen
Fördern Sie die Trennung von Anzeige und Daten
Nachteile der asynchronen AJAX-Verarbeitung:
Es gibt viel JS auf der Seite, was Suchmaschinen Schwierigkeiten bereitet
AJAX beendet die Funktionen „Zurück“ und „Verlauf“, was eine Zerstörung der Browser-Mechanismus Es liegt ein domänenübergreifendes Problem vorNur ​​utf-8-codierte Daten können übertragen und empfangen werden


1. AJAX-Implementierungsschritte




window.open(URL,name,features,replace)

URL:
Eine optionale Zeichenfolge, die die URL des Dokuments angibt, das im neuen angezeigt werden soll Fenster. Wenn dieser Parameter
weggelassen wird oder sein Wert eine leere Zeichenfolge ist, wird im neuen Fenster kein Dokument angezeigt.

Name:Eine optionale Zeichenfolge, die eine durch Kommas getrennte Liste von Zeichen einschließlich ist Zahlen, Buchstaben und der Unterstrich , der den Namen des neuen Fensters angibt. Dieser Name kann als Wert des Zielattributs der Tags verwendet werden. Wenn dieser Parameter ein vorhandenes Fenster angibt, erstellt die open()-Methode kein neues Fenster mehr, sondern gibt lediglich einen Verweis auf das angegebene Fenster zurück. In diesem Fall werden Funktionen ignoriert.
features: Eine optionale Zeichenfolge, die die Standardbrowserfunktionen angibt, die im neuen Fenster angezeigt werden sollen. Wenn dieser Parameter weggelassen wird,
verfügt das neue Fenster über alle Standardfunktionen. In der Tabelle mit den Fenstereigenschaften beschreiben wir das Format dieser Zeichenfolge im Detail

ersetzen Sie:Ein optionaler boolescher Wert. Gibt an, ob eine in ein Fenster geladene URL einen neuen Eintrag im Browserverlauf des Fensters erstellt,
oder den aktuellen Eintrag im Browserverlauf ersetzt. Die folgenden Werte werden unterstützt:
true – URL ersetzt den aktuellen Eintrag im Browserverlauf. false – URL erstellt einen neuen Eintrag im Browserverlauf

send()send() wird verwendet, um Daten an einen verbundenen Socket zu senden. Wenn kein Fehler vorliegt, ist der Rückgabewert Die Gesamtzahl der gesendeten Daten,
, andernfalls wird SOCKET_ERROR zurückgegeben. [1] Send ist ebenfalls ein englisches Wort.


responseText-Attribut:


Die Textversion der vom Serverprozess zurückgegebenen Daten
Der DOM-kompatible XML-Dokumentobjektstatusserver Vom Serverprozess zurückgegebener Statuscode, z. B.: 404 = „Datei nicht gefunden“.
Wenn Sie eine xmlhttp-Anfrage an das Ajax-Hintergrundprogramm senden, verarbeitet das Hintergrundprogramm die Anfrage nach dem Empfang Ist der Vorgang abgeschlossen, kann eine Datenzeichenfolge an den Vordergrund zurückgegeben werden.
Dies ist im Hintergrundprogramm C# im Allgemeinen Response.Write("string"). In PHP wird echo verwendet ist eine Ausgabezeichenfolge
, da ein Zeichen ausgegeben wird. Manchmal erhalten Sie jedoch ein Array, das Sie jedoch mit der JSON-Technologie in PHP serialisieren müssen, um das Array in eine
-Zeichenfolge umzuwandeln Front-End und das Front-End-Attribut respText können diese Zeichenfolge empfangen. Verwenden Sie dann die JSON-Technologie in JS, um diese Zeichenfolge zu konvertieren
Konvertieren Sie es erneut in ein von JS erkanntes Objekt für den Betrieb (der JSON-Datenübertragungstyp wird grundsätzlich von jeder Sprache erkannt und kann für die Übertragung und Konvertierung in verschiedenen Sprachen verwendet werden)


Initialisieren Sie das XMLHttpRequest-Objekt

XMLHttpRequest gibt eine HTTP-Anfrage aus

Beispiel:
//GET-Methode
Parameter 1: Stellt dar, ob die Anfrage in get gesendet werden soll oder Post-Methode Parameter 2: An welche URL soll die Anfrage gesendet werden? Parameter 3: true stellt eine asynchrone Anfrage dar, false stellt eine synchrone Anfrage dar

Sende eine POST-Anfrage

var username=$("input[name='user_name']");
Nach dem Login kopieren

Parameter 1: stellt die Methode „Anfrage per Get oder Post senden“ dar. Parameter 2: An welche URL die Anfrage gesendet werden soll. Parameter 3: „true“ stellt eine asynchrone Anfrage dar, „false“ stellt eine synchrone Anfrage dar

http_request.open("POST","test.php",true);
http_request.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
Nach dem Login kopieren

Wenn es sich um eine POST-Übertragungsmethode handelt, schreiben Sie den Wert in die send( )-Funktion

http_request.send({username:username});
Nach dem Login kopieren


4. JSON
Javascript-Objekt Notation, ist ein leichtes Datenaustauschformat
JSON alle Sprachen kennen es, also verwenden Sie es, um Daten in verschiedene Sprachen zu konvertieren
JSON unterstützt mehrere Sprachen​​
Format
{ key:value,key:value,...} Objektformat
[{key:value,key:value,.....},{key:value,key:value,.....}, ...] Array-Format
PHP-Verarbeitung:
$json=json_encode($array) //Variablen in Json kodieren
$array=json_decode($json) //Json-Daten dekodieren und in PHP konvertieren Variablen
JavaScript-Verarbeitung:
eval(' ​​('+json+')') //Führen Sie eine bestimmte Zeichenfolge gemäß JS-Code aus
Beispiel:

eval("x=10;y=20;document.write(x*y)")
document.write(eval("2+2"))
JSON.parse(json) //对传过来的json字符串进行解码,变成JS认识的对象
JSON.stringify(obj) //将JS中的值编译成json字符串
Nach dem Login kopieren


5. AJAX-Anwendung in jQuery 1
. Vergessen Sie nicht,

$.ajax({
            //你要传的php文件的路径
            url:"test1.php",    ('服务器url地址')
            //以get方式传输拼接字符串
            data:"user_name="+$('input[name="user_name"]').val(),('名=值&名=值&.....',)
            //以什么方式传输
            type:'get',('post|get')
            //传输返回的数据类型
            dataType:'json',  ('xml|html|text|json|script')
            //展示 数据的方式
            success:function(res){
                $('h1').text('用户名为:'+res.user_name);
            },
                //错误信息
                error:function(xhr){
                },
              timeout:2000,
              async:true,
              cache:false
})
Nach dem Login kopieren

6. AJAX-Anwendung in jQuery 2

$.get()
$.get('服务器url地址',"json格式或字符串格式",function(res){
        //处理返回的数据
}), "xml|html|json|text|script")
Nach dem Login kopieren

Beispiel zu schreiben :

            //'服务器url地址',"json格式或字符串格式"
        $.get("test1.php",{user_name:$("input[name='user_name']").val()},function(data){
               //如果后台发过来的值跟这里的值相等让他执行下面代码
                if(data.status=='ok'){
                    alert("登陆成功");
                    location.href="http://www.wl.com";
                }else{
                    alert("登陆失败");
                }
        //"xml|html|json|text|script"类型
        },'json')
Nach dem Login kopieren


7. AJAX-Anwendung in jQuery 3
serialize() Der Inhalt der Sequenztabellentabelle sind Zeichenfolgen und die serialisierten Daten sind wird für Ajax-Anfragen verwendet

$.post()
$.post('服务器url地址',"json格式或字符串格式",function(res){
        //处理返回的数据
}), "xml|html|json|text|script")
Nach dem Login kopieren

Beispiel:

//'服务器url地址',"json格式或字符串格式" 用post方式提交要用form表单包起来
        // 然后用serialize()来拿里面所有有值
        $.post("test1.php",$('form').serialize(),function(res){
            //如果后台发过来的值跟这里的值相等让他执行下面代码
            if(res.status=='ok'){
                alert("登陆成功");
                location.href="http://www.wl.com";
            }else{
                alert("登陆失败");
            }
            //"xml|html|json|text|script"类型
        },'json')
Nach dem Login kopieren

Ausgabe in PHP empfangen und verarbeiten

try{
    $pdo=new PDO("mysql:host=127.0.0.1;port=3306;dbname=数据库名",'数据库账号','数据库密码');
    $pdo->exec("set names utf8");
    $sen=$pdo->query("select * from yh_admin where user_name='{$user_name}' limit 1");
    if($sen->rowCount()>0){
       // $arr=$sen->fetch(PDO::FETCH_ASSOC);
        //echo json_encode($arr);
        //echo 'yes';
       $arr['status']='ok';
    }else{
        echo 'no';
    }
    //切记用json数据类型传输
    echo json_encode($arr);
}catch (PDOException $e){
    echo $e->getMessage();
}
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonZusammenfassung der Wissenspunkte von jQuerys AJAX. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!