Maison >interface Web >js tutoriel >Actualisation de la page jQuery (partielle, totale) analyse du problème_jquery

Actualisation de la page jQuery (partielle, totale) analyse du problème_jquery

WBOY
WBOYoriginal
2016-05-16 15:20:541383parcourir

L'exemple de cet article est divisé en deux parties pour présenter le problème de rafraîchissement jquery. La première partie présente le rafraîchissement partiel de la page ; la deuxième partie présente le rafraîchissement complet de la page
Premier : Actualisation partielle de la page

jQuery encapsule les opérations Ajax. Dans jQuery, la méthode $.ajax() est la méthode de niveau le plus bas. La deuxième couche est constituée des méthodes laod(), $.get() et $.post(), et la troisième. layer est Sont les méthodes $.getScript() et $.getJSON().
Focus sur l'analyse La méthode load() est généralement utilisée pour obtenir des fichiers de données statiques du serveur Web. Pour transmettre certains paramètres à la page du serveur, vous pouvez utiliser la méthode $.get() ou $.post(). méthode ajax

load() Code 
//无参数传递,则是GET方式
$("#resText").load("test.php",function(){
//......
});

//有参数传递,则是POST方式
$("#resText").load("test.php",{name:"xht555",age:"24"},function(){
//......
});

Parlons brièvement de la différence entre publier et obtenir :

get : utilisez la méthode get pour transmettre des données simples (c'est-à-dire que le navigateur ajoute chaque élément de champ de formulaire et ses données à la fin de l'URL en fonction du format des paramètres de l'URL), mais la taille est généralement limitée à 1 Ko ; mis en cache par le navigateur du client. Levez-vous, ce n'est pas sûr.

post : Le navigateur envoie chaque élément de champ de formulaire et ses données au serveur Web en tant que contenu d'entité du message HTTP, au lieu de le transmettre en tant que paramètres de l'adresse URL

.

Résumé :

1 : La méthode GET transmet une petite quantité de données, a une efficacité de traitement élevée et une faible sécurité, et sera mise en cache, alors que l'inverse est vrai pour POST.

2 : Problème AJAX tronqué
Raisons des caractères tronqués :
1. Le codage de caractères par défaut des données renvoyées par xtmlhttp est utf-8. Si la page client est gb2312 ou d'autres données codées, des caractères tronqués seront générés
. 2. Le codage de caractères par défaut pour les données soumises par la méthode post est utf-8. Si le codage côté serveur est gb2312 ou d'autres données de codage, des caractères tronqués seront générés

.

Les solutions sont :
1. Si le client utilise l'encodage gb2312, spécifiez l'encodage du flux de sortie sur le serveur

2. Le serveur et le client utilisent le codage utf-8

gb2312:header('Content-Type:text/html;charset=GB2312');

utf8:header('Content-Type:text/html;charset=utf-8');

Remarque : si vous avez suivi la méthode ci-dessus et que vous renvoyez toujours des caractères tronqués, vérifiez si votre méthode est get (ou toute requête impliquant des paramètres de transmission d'URL), les paramètres transmis doivent d'abord être transmis au traitement de la méthode encodeURIComponent. n'est pas utilisé, des caractères tronqués seront également générés

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


Deuxième : Actualiser toutes les pages

  • 1 window.location.reload() actualise la page actuelle.
  • 2 parent.location.reload() actualise l'objet parent (pour le framework)
  • 3 opener.location.reload() actualise l'objet fenêtre parent (pour les fenêtres à ouverture unique)
  • 4 top.location.reload() actualise l'objet supérieur (pour plusieurs fenêtres)

Ce qui précède est le contenu détaillé de cet article, j'espère qu'il sera utile à l'étude de chacun.

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn