AJAX即“Asynchronous Javascript And XML”(異步JavaScript和XML),是指一種創建交互式網頁應用的網頁開發技術。
AJAX = 異步 JavaScript和XML(標準通用標記語言的子集)。
AJAX 是一種用于創建快速動態網頁的技術。
通過在后臺與服務器進行少量數據交換,AJAX 可以使網頁實現異步更新。這意味著可以在不重新加載整個網頁的情況下,對網頁的某部分進行更新。
傳統的網頁(不使用 AJAX)如果需要更新內容,必須重載整個網頁頁面。
•"xml": 返回 XML 文檔,可用 jQuery 處理。
•"html": 返回純文本 HTML 信息;包含的 script 標簽會在插入 dom 時執行。
•"script": 返回純文本 JavaScript 代碼。不會自動緩存結果。除非設置了 "cache" 參數。注意:在遠程請求時(不在同一個域下),所有 POST 請求都將轉為 GET 請求。(因為將使用 DOM 的 script標簽來加載)
•"json": 返回 JSON 數據 。
•"jsonp": JSONP 格式。使用 JSONP 形式調用函數時,如 "myurl?callback=?" jQuery 將自動替換 ? 為正確的函數名,以執行回調函數。
•"text": 返回純文本字符串
一、前臺傳遞字符串變量,后臺返回字符串變量(非json格式)
這里,為了解決Ajax數據傳遞出現的漢字亂碼,在字符串傳遞之前,使用javascript函數escape()對漢字字符串進行了編碼,并且對返回
的字符串使用unescape()函數進行解碼,使得漢字得以正常顯示。當然了,后臺PHP代碼也添加了頭文件,以保證漢字字符串不會出現亂碼。各種后臺代碼解決
漢字亂碼問題的方式如下:
PHP:header('Content-Type:text/html;charset=GB2312');
Javascript代碼:
$(function(){var my_data="前臺變量";my_data=escape(my_data)+"";//編碼,防止漢字亂碼$.ajax({url: "ajax_php.php",type: "POST",data:{trans_data:my_data},//dataType: "json",error: function(){alert('Error loading XML document');},success: function(data,status){//如果調用php成功alert(unescape(data));//解碼,顯示漢字}});});
PHP代碼:
header('Content-Type:text/html; charset=gb2312');//使用gb2312編碼,使中文不會變成亂碼$backValue=$_POST['trans_data'];echo $backValue."+后臺返回";
二、前臺傳遞多個一維數組,后臺返回字符串變量(非json格式)
在非json格式下,后臺只能返回字符串,如果想后臺返回數組,可以采用json格式,在本文的后面會詳細介紹。
Javascript代碼:
$(function(){var my_data=new Array();var my_data1=new Array();my_data[0]=0;my_data[1]=1;my_data[2]=2;my_data1[0]=10;my_data1[1]=11;my_data1[2]=12;$.ajax({url: "ajax_php.php",type: "POST",data:{trans_data:my_data,trans_data1:my_data1},//dataType: "json",error: function(){alert('Error loading XML document');},success: function(data,status){//如果調用php成功alert(data);}});});
新聞熱點
疑難解答
圖片精選