Heim >Web-Frontend >js-Tutorial >jQuery-Seitenaktualisierung (teilweise, vollständig) Problemanalyse_jquery
Das Beispiel dieses Artikels ist in zwei Teile unterteilt, um das Jquery-Aktualisierungsproblem vorzustellen. Der erste Teil stellt die teilweise Aktualisierung der Seite vor; der zweite Teil stellt die vollständige Aktualisierung der Seite vor
Zuerst: Teilweise Seitenaktualisierung
Fokus auf Analyse Die Methode „load()“ wird normalerweise verwendet, um statische Datendateien vom Webserver abzurufen. Um einige Parameter an die Seite auf dem Server zu übergeben, können Sie die Methode „$.get()“ oder „$.post()“ verwenden. Ajax-Methode
load() Code //无参数传递,则是GET方式 $("#resText").load("test.php",function(){ //...... }); //有参数传递,则是POST方式 $("#resText").load("test.php",{name:"xht555",age:"24"},function(){ //...... });
Lassen Sie uns kurz über den Unterschied zwischen Post und Get sprechen:
get: Verwenden Sie die get-Methode, um einfache Daten zu übertragen (dh der Browser hängt jedes Formularfeldelement und seine Daten entsprechend dem Format der URL-Parameter an das Ende der URL an), die Größe ist jedoch im Allgemeinen auf begrenzt 1 KB; vom Browser des Clients zwischengespeichert. Steh auf, es ist nicht sicher.Beitrag: Der Browser sendet jedes Formularfeldelement und seine Daten als Entitätsinhalt der HTTP-Nachricht an den Webserver, anstatt sie als Parameter der URL-Adresse zu übergeben
Zusammenfassung:
1: Die GET-Methode überträgt eine kleine Datenmenge, weist eine hohe Verarbeitungseffizienz und geringe Sicherheit auf und wird zwischengespeichert, während bei POST das Gegenteil der Fall ist.
2: AJAX-verstümmeltes Problem
Gründe für verstümmelte Zeichen:
1. Die Standardzeichenkodierung der von xtmlhttp zurückgegebenen Daten ist utf-8. Wenn die Clientseite gb2312 oder andere kodierte Daten ist, werden verstümmelte Zeichen generiert
2. Die Standardzeichenkodierung für von der Post-Methode übermittelte Daten ist utf-8. Wenn die serverseitige Kodierung gb2312 oder eine andere Kodierungsdaten ist, werden verstümmelte Zeichen generiert
Die Lösungen sind:
2. Sowohl der Server als auch der Client verwenden die UTF-8-Kodierung
gb2312:header('Content-Type:text/html;charset=GB2312');
utf8:header('Content-Type:text/html;charset=utf-8');
Hinweis: Wenn Sie die obige Methode befolgt haben und immer noch verstümmelte Zeichen zurückgeben, überprüfen Sie, ob Ihre Methode Get-Anforderungen (oder alle URL-Übergabeparameter) enthält. Bei encodeURIComponent müssen die übergebenen Parameter zuerst übergeben werden nicht verwendet wird, werden auch verstümmelte Zeichen generiert
$.post() Code //$.post()方式: $('#test_post').click(function (){ $.post( 'ajax_json.php', { username:$('#input1').val(), age:$('#input2').val(), sex:$('#input3').val(), job:$('#input4').val() }, function (data) //回传函数 { var myjson=''; eval('myjson=' + data + ';'); $('#result').html("姓名:" + myjson.username + "<br/>工作:" + myjson['job']); } ); }); $.get() Code //$.get()方式: $('#test_get').click(function () { $.get( 'ajax_json.php', { username:$("#input1").val(), age:$("#input2").val(), sex:$("#input3").val(), job:$("#input4").val() }, function(data) //回传函数 { var myjson=''; eval("myjson=" + data + ";"); $('#result').html("姓名:" + myjson.username + "<br/>工作:" + myjson['job']); } ); }); }); $.getJson(”Default.php”, {id:”1″, page: “2″ }, function(data){ //注意,这里返回的JSON数据格式,不同于xml. });
Alle Seiten aktualisieren