天天看點

關于jQuery頁面重新整理(局部、全部)問題

關于jQuery頁面重新整理(局部、全部)問題

第一:頁面局部重新整理:

jQuery對Ajax操作進行了封裝,在jQuery中$.ajax()方法屬于最底層的方法,第2層是laod()、$.get()和$.post()方法,第3層是$.getScript()和$.getJSON()方法。

關于jQuery頁面重新整理(局部、全部)問題

$.ajax()Code

load()方法通常用來從Web伺服器上擷取靜态的資料檔案.要傳遞一些參數給伺服器中的頁面,那麼可以使用$.get()或者$.post()方法$.ajax方法

關于jQuery頁面重新整理(局部、全部)問題

1 //無參數傳遞,則是GET方式
2 $("#resText").load("test.php",function(){
3 //......
4 });
5 
6 //有參數傳遞,則是POST方式
7 $("#resText").load("test.php",{name:"xht555",age:"24"},function(){
8 //......
9 });            

簡單說一下 post 與get 差別:

get:用get方式可傳送簡單資料(即:浏覽器将各個表單字段元素及其資料按照URL參數的格式附加在url後面),但大小一般限制在1KB下;被用戶端的浏覽器緩存起來,不安全。

post:覽器把各表單字段元素及其資料作為HTTP消息的實體内容發送給Web伺服器,而不是作為URL位址的參數進行傳遞,  

總結:

一:GET方式傳送資料量小,處理效率高,安全性低,會被緩存,而POST反之。 

二:AJAX亂碼問題 

産生亂碼的原因: 

1、xtmlhttp 傳回的資料預設的字元編碼是utf-8,如果用戶端頁面是gb2312或者其它編碼資料就會産生亂碼 

2、post方法送出資料預設的字元編碼是utf-8,如果伺服器端是gb2312或其他編碼資料就會産生亂碼 

解決辦法有: 

1、若用戶端是gb2312編碼,則在伺服器指定輸出流編碼 

2、伺服器端和用戶端都使用utf-8編碼 

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

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

注 意:如果你已經按上面的方法做了,還是傳回亂碼的話,檢查你的方式是否為get,對于get請求(或凡涉及到url傳遞參數的),被傳遞的參數都要先經 encodeURIComponent方法處理.如果沒有用encodeURIComponent處理的話,也會産生亂碼 

關于jQuery頁面重新整理(局部、全部)問題
1 //$.post()方式:
 2 $('#test_post').click(function (){
 3     $.post(
 4       'ajax_json.php',
 5       {
 6         username:$('#input1').val(),
 7         age:$('#input2').val(),
 8         sex:$('#input3').val(),
 9         job:$('#input4').val()
10       },
11       function (data) //回傳函數
12       {
13         var myjson='';
14         eval('myjson=' + data + ';');
15         $('#result').html("姓名:" + myjson.username + "<br/>工作:" + myjson['job']);
16       }
17     );
18    });           
關于jQuery頁面重新整理(局部、全部)問題
1 //$.get()方式:
 2 $('#test_get').click(function ()
 3 {
 4     $.get(
 5       'ajax_json.php',
 6       {
 7         username:$("#input1").val(),
 8         age:$("#input2").val(),
 9         sex:$("#input3").val(),
10         job:$("#input4").val()
11       },
12       function(data) //回傳函數
13       {
14         var myjson='';
15         eval("myjson=" + data + ";");
16          $('#result').html("姓名:" + myjson.username + "<br/>工作:" + myjson['job']);
17       }
18     );
19 });
20 
21 
22 });           
關于jQuery頁面重新整理(局部、全部)問題
1 $.getJson(”Default.php”, {id:”1″, page: “2″ },
2 function(data){
3 //注意,這裡傳回的JSON資料格式,不同于xml.
4 });           
關于jQuery頁面重新整理(局部、全部)問題
1 window.location.reload()重新整理目前頁面.
2 parent.location.reload()重新整理父親對象(用于架構)
3 opener.location.reload()重新整理父視窗對象(用于單開視窗)
4 top.location.reload()重新整理最頂端對象(用于多開視窗)           

繼續閱讀