Heim  >  Artikel  >  Web-Frontend  >  jQuery-Seitenaktualisierung (teilweise, vollständig) Problemanalyse_jquery

jQuery-Seitenaktualisierung (teilweise, vollständig) Problemanalyse_jquery

WBOY
WBOYOriginal
2016-05-16 15:20:541325Durchsuche

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

jQuery kapselt Ajax-Operationen. In jQuery ist die Methode $.ajax() die Methode der niedrigsten Ebene. Die zweite Ebene sind die Methoden laod(), $.get() und $.post() Die Ebene besteht aus den Methoden $.getScript() und $.getJSON().

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:

1. Wenn der Client die gb2312-Kodierung verwendet, geben Sie die Ausgabestream-Kodierung auf dem Server an


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.
});


Zweitens:

Alle Seiten aktualisieren

  • 1 window.location.reload() aktualisiert die aktuelle Seite.
  • 2 parent.location.reload() aktualisiert das übergeordnete Objekt (für Framework)
  • 3 opener.location.reload() aktualisiert das übergeordnete Fensterobjekt (für einfach geöffnete Fenster)
  • 4 top.location.reload() aktualisiert das oberste Objekt (für mehrere Fenster)
  • Das Obige ist der detaillierte Inhalt dieses Artikels. Ich hoffe, er wird für das Studium aller hilfreich sein.
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