Maison >interface Web >js tutoriel >Actualisation de la page jQuery (partielle, totale) analyse du problème_jquery
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
Ce qui précède est le contenu détaillé de cet article, j'espère qu'il sera utile à l'étude de chacun.