校园春色亚洲色图_亚洲视频分类_中文字幕精品一区二区精品_麻豆一区区三区四区产品精品蜜桃

主頁 > 知識庫 > ajax處理服務器返回的三種數據類型方法

ajax處理服務器返回的三種數據類型方法

熱門標簽:立陶宛地圖標注 河間市地圖標注app 中國地圖標注不明確情況介紹表 大眾點評400電話怎么申請 電銷機器人 長春 地圖標注推銷坑人 上海企業外呼系統價錢 東平縣地圖標注app 怎樣在地圖標注文字

其原理很簡單,結構上基本不變,只是改變處理返回數據的方式.

1.Text/HTML格式
這種返回類型處理很簡單,直接就當作字符串用就行了.為了方便使用,封裝成如下函數:

/**
 * @function 利用ajax動態交換數據(Text/HTML格式)
 * @param url  要提交請求的頁面
 * @param jsonData 要提交的數據,利用Json傳遞
 * @param getMsg 這個函數可以獲取到處理后的數據
 */
function ajaxText(url,jsonData,getMsg)
{
  //創建Ajax對象,ActiveXObject兼容IE5,6
  var oAjax = window.XMLHttpRequest?new XMLHttpRequest():new ActiveXObject("Microsoft.XMLHTTP");
  //打開請求
  oAjax.open('POST',url,true);//方法,URL,異步傳輸
  //發送請求
  var data = '';
  for(var d in jsonData)  //拼裝數據
    data += (d + '=' +jsonData[d]+'');
  oAjax.setRequestHeader("Content-type","application/x-www-form-urlencoded");
  oAjax.send(data);
  //接收返回,當服務器有東西返回時觸發
  oAjax.onreadystatechange = function ()
  {
    if(oAjax.readyState == 4  oAjax.status == 200)
    {
      if(getMsg) getMsg(oAjax.responseText);
    }
  }
}

服務器端返回數據格式如下:
例如:

//返回的是xml格式
//header("Content-Type:text/xml;charset=utf-8");
//返回的是text或Json格式
header("Content-Type:text/html;charset=utf-8");
//禁用緩存,是為了數據一樣的前提下還能正常提交,而不是緩存數據
header("Cache-Control:no-cache");
$username = $_POST['username']; //獲取用戶名
if(empty($username))
  echo '請輸入用戶名';
else if($username == 'acme')
  echo '用戶名已被注冊';
else
  echo '用戶名可用';

調用格式如下:

url = 'abc.php';
var jsonData={username:'acme',passw:'acme'};
ajaxText(url,jsonData,getMsg);
function getMsg(msg)
{
 //do something
}

2.XML格式

返回的是一個XML DOM對象,解析其中的數據就類似于HTML DOM 編程. 比如通過name獲取標簽對象(數組形式),再從該數組中獲取需要的標簽對象,再從標簽對象中獲取文本值.
函數如下:

/**
 * @function 利用ajax動態交換數據(XML格式)
 * @param url  要提交請求的頁面
 * @param jsonData 要提交的數據,利用Json傳遞
 * @param tagName 要獲取值的標簽名
 * @param getMsg 這個函數可以獲取到處理后的數據
 */
function ajaxXML(url,jsonData,tagName,getMsg)
{
  //創建Ajax對象,ActiveXObject兼容IE5,6
  var oAjax = window.XMLHttpRequest?new XMLHttpRequest():new ActiveXObject("Microsoft.XMLHTTP");
  //打開請求
  oAjax.open('POST',url,true);//方法,URL,異步傳輸
  //發送請求
  var data = '';
  for(var d in jsonData)  //拼裝數據
    data += (d + '=' +jsonData[d] + '');
  oAjax.setRequestHeader("Content-type","application/x-www-form-urlencoded");
  oAjax.send(data);
  //接收返回,當服務器有東西返回時觸發
  oAjax.onreadystatechange = function ()
  {
    if(oAjax.readyState == 4  oAjax.status == 200)
    {
      var oXml = oAjax.responseXML; //返回的是一個XML DOM對象
      var oTag = oXml.getElementsByTagName(tagName);
      var tagValue = oTag[0].childNodes[0].nodeValue;
      if(getMsg)getMsg(tagValue);
    }
  }
}

服務器端返回數據格式如下:
例如:

//返回的是xml格式
header("Content-Type:text/xml;charset=utf-8");
//返回的是text或Json格式
//header("Content-Type:text/html;charset=utf-8");
//禁用緩存,是為了數據一樣的前提下還能正常提交,而不是緩存數據
header("Cache-Control:no-cache");
$username = $_POST['username']; //獲取用戶名
if(empty($username))
  echo 'user>mes>請輸入用戶名/mes>/user>'; //這些標簽可以自定義
else if($username == 'acme')
  echo 'user>mes>用戶名已被注冊/mes>/user>';
else
  echo 'user>mes>用戶名可用/mes>/user>';

調用格式如下:

var url = 'abc.php';
var jsonData = {username:'acme'};
ajaxXML(url,jsonData,'mes',getMsg);
function getMsg(msg)
 {
   //do something
 }

3.返回json

函數如下:

/**
 * @function 利用ajax動態交換數據(Text/HTML格式),但是返回的是Json類型的文本數據
 * @param url  要提交請求的頁面
 * @param jsonData 要提交的數據,利用Json傳遞
 * @param getMsg 這個函數可以獲取到處理后的數據
 */
function ajaxJson(url,jsonData,getMsg)
{
  //創建Ajax對象,ActiveXObject兼容IE5,6
  var oAjax = window.XMLHttpRequest?new XMLHttpRequest():new ActiveXObject("Microsoft.XMLHTTP");
  //打開請求
  oAjax.open('POST',url,true);//方法,URL,異步傳輸
  //發送請求
  var data = '';
  for(var d in jsonData)  //拼裝數據
    data += (d + '=' +jsonData[d] + '');
  oAjax.setRequestHeader("Content-type","application/x-www-form-urlencoded");
  oAjax.send(data);
  //接收返回,當服務器有東西返回時觸發
  oAjax.onreadystatechange = function ()
  {
    if(oAjax.readyState == 4  oAjax.status == 200)
    {
      var json = eval('('+oAjax.responseText+')');//把傳回來的字符串解析成json對象
      if(getMsg)getMsg(json);
    }
  }
}

服務器端返回數據格式如下:

例如:

//返回的是xml格式
//header("Content-Type:text/xml;charset=utf-8");
//返回的是text或Json格式
header("Content-Type:text/html;charset=utf-8");
//禁用緩存,是為了數據一樣的前提下還能正常提交,而不是緩存數據
header("Cache-Control:no-cache");
$username = $_POST['username']; //獲取用戶名
if(empty($username))
  echo '{"mes":"請輸入用戶名"}';
else if($username == 'acme')
  echo '{"mes":"用戶名已被注冊"}';
else
  echo '{"mes":"用戶名可用"}';

調用格式如下:

url = 'abc.php';
var jsonData={username:'acme',passw:'acme'};
ajaxText(url,jsonData,getMsg);
function getMsg(msg)
{
 //do something
}

為了方便使用,可以把三個函數合并.合并后的函數如下:

/**
 * @function 利用ajax動態交換數據
 * @param url  要提交請求的頁面
 * @param jsonData 要提交的數據,利用Json傳遞
 * @param getMsg 這個函數可以獲取到處理后的數據
 * @param type  接受的數據類型,text/xml/json
 * @param tagName type = xml 的時候這個參數設置為要獲取的文本的標簽名
 * @return 無
 */
function ajax(url,jsonData,getMsg,type,tagName)
{
  //創建Ajax對象,ActiveXObject兼容IE5,6
  var oAjax = window.XMLHttpRequest?new XMLHttpRequest():new ActiveXObject("Microsoft.XMLHTTP");
  //打開請求
  oAjax.open('POST',url,true);//方法,URL,異步傳輸
  //發送請求
  var data = '';
  for(var d in jsonData)  //拼裝數據
    data += (d + '=' +jsonData[d]+'');
  oAjax.setRequestHeader("Content-type","application/x-www-form-urlencoded");
  oAjax.send(data);
  //接收返回,當服務器有東西返回時觸發
  oAjax.onreadystatechange = function ()
  {
    if(oAjax.readyState == 4  oAjax.status == 200)
    {
      if(type == 'text')
      {
        if(getMsg) getMsg(oAjax.responseText);
      }
      else if(type == 'json')
      {
        var json = eval('('+oAjax.responseText+')');//把傳回來的字符串解析成json對象
        if(getMsg)getMsg(json);
      }
      else if(type == 'xml')
      {
        var oXml = oAjax.responseXML; //返回的是一個XML DOM對象
        var oTag = oXml.getElementsByTagName(tagName);
        var tagValue = oTag[0].childNodes[0].nodeValue;
        if(getMsg)getMsg(tagValue);
      }

    }
  }
}

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

您可能感興趣的文章:
  • 基于Jquery 解決Ajax請求的頁面 瀏覽器后退前進功能,頁面刷新功能實效問題
  • Js 代碼中,ajax請求地址后加隨機數防止瀏覽器緩存的原因
  • AJAX 網頁保留瀏覽器前進后退等功能
  • AJAX 常用函數創建XMLHTTP對象,區別IE,Mozilla瀏覽器
  • JQuery的ajax獲取數據后的處理總結(html,xml,json)
  • Jquery Ajax學習實例 向頁面發出請求,返回XML格式數據
  • AJAX使用post發送數據xml格式接受數據
  • jquery $.ajax()取xml數據的小問題解決方法
  • 用Ajax讀取XML格式的數據
  • 關于jquery ajax 調用帶參數的webservice返回XML數據一個小細節

標簽:益陽 營口 遼寧 本溪 內江 四川 玉樹 銅川

巨人網絡通訊聲明:本文標題《ajax處理服務器返回的三種數據類型方法》,本文關鍵詞  ajax,處理,服務器,返回,的,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《ajax處理服務器返回的三種數據類型方法》相關的同類信息!
  • 本頁收集關于ajax處理服務器返回的三種數據類型方法的相關信息資訊供網民參考!
  • 推薦文章
    校园春色亚洲色图_亚洲视频分类_中文字幕精品一区二区精品_麻豆一区区三区四区产品精品蜜桃
    成人网在线播放| 国产又粗又猛又爽又黄91精品| 久久婷婷国产综合精品青草| 欧美日本一道本在线视频| 日本精品视频一区二区| av在线播放一区二区三区| av在线播放成人| 在线亚洲+欧美+日本专区| 一本大道久久a久久精品综合| av电影天堂一区二区在线观看| 成人av先锋影音| 一本高清dvd不卡在线观看| 色一情一伦一子一伦一区| 欧美日韩免费一区二区三区| 精品视频1区2区3区| 91麻豆精品国产无毒不卡在线观看 | 粉嫩欧美一区二区三区高清影视| 国产制服丝袜一区| 高清日韩电视剧大全免费| 97久久久精品综合88久久| 色婷婷精品久久二区二区蜜臀av | 五月天激情综合网| 青青草国产成人99久久| 国产91丝袜在线播放九色| 99这里只有精品| 91精品国产综合久久精品性色| 69p69国产精品| 国产日产欧产精品推荐色 | 精品少妇一区二区三区视频免付费| 日韩精品一区二区三区四区| 久久亚洲二区三区| 亚洲色图在线视频| 日本欧美在线看| 成人免费视频一区二区| 欧美三级电影在线看| 久久亚洲私人国产精品va媚药| 久久精品亚洲乱码伦伦中文| 亚洲自拍偷拍网站| 国产麻豆日韩欧美久久| 欧美无砖专区一中文字| 26uuu亚洲综合色欧美| 成人免费视频在线观看| 美日韩一级片在线观看| 99精品久久只有精品| 日韩视频免费直播| 亚洲卡通动漫在线| 国产一区二区福利视频| 欧美色窝79yyyycom| 亚洲精品一区二区三区影院| 亚洲国产裸拍裸体视频在线观看乱了 | 欧美日韩国产123区| 久久久久久一级片| 日韩av二区在线播放| 一本色道**综合亚洲精品蜜桃冫| 欧美精品一区二| 亚洲高清免费视频| 色欧美日韩亚洲| 欧美激情资源网| 国内成人免费视频| 制服丝袜成人动漫| 亚洲国产精品嫩草影院| 色先锋久久av资源部| 欧美激情一区二区| 国产自产v一区二区三区c| 91精品麻豆日日躁夜夜躁| 亚洲综合在线第一页| 色综合久久久久综合| 中文字幕日本乱码精品影院| 国产精品18久久久| 精品国产自在久精品国产| 日本不卡123| 9191精品国产综合久久久久久| 亚洲免费资源在线播放| 一本一道综合狠狠老| 亚洲精品国产一区二区精华液 | 国产精品影视网| 欧美videos中文字幕| 蜜桃视频在线观看一区| 欧美成人欧美edvon| 麻豆传媒一区二区三区| 日韩一级片网址| 美女尤物国产一区| 欧美不卡视频一区| 国产一区三区三区| 国产三级久久久| 91色婷婷久久久久合中文| 亚洲精品免费在线播放| 色噜噜狠狠色综合中国| 亚洲一区二区三区四区中文字幕| 色哟哟一区二区在线观看| 一级日本不卡的影视| 欧美日免费三级在线| 亚洲不卡一区二区三区| 制服丝袜国产精品| 国内精品久久久久影院薰衣草| 国产欧美日韩另类一区| 色94色欧美sute亚洲13| 日韩成人免费电影| 久久九九久久九九| 色先锋aa成人| 久久精品理论片| 国产精品美女久久久久aⅴ国产馆 国产精品美女久久久久av爽李琼 国产精品美女久久久久高潮 | 91精品在线麻豆| 韩国精品久久久| 亚洲天堂精品在线观看| 欧美在线制服丝袜| 久久se精品一区精品二区| 国产精品传媒在线| 69久久99精品久久久久婷婷| 国产麻豆视频一区| 午夜视频在线观看一区二区三区| 日韩欧美国产午夜精品| kk眼镜猥琐国模调教系列一区二区| 亚洲国产视频a| 国产欧美一区二区三区鸳鸯浴| 91国内精品野花午夜精品| 精品中文字幕一区二区小辣椒| 1024精品合集| 欧美成人激情免费网| 99国产精品一区| 国产综合成人久久大片91| 亚洲综合成人在线视频| 国产午夜精品理论片a级大结局 | 99久久综合色| 久久99精品国产.久久久久久| 中文字幕在线观看不卡| 26uuu欧美日本| 欧美久久一区二区| av高清不卡在线| 精品一区二区免费视频| 午夜精品福利一区二区三区蜜桃| 国产精品你懂的在线| 精品国产乱码91久久久久久网站| 欧美日韩一区二区欧美激情| 成人aa视频在线观看| 国产真实乱子伦精品视频| 奇米一区二区三区av| 亚洲一区二区欧美| 一区二区三区不卡在线观看| 国产清纯美女被跳蛋高潮一区二区久久w| 欧美日韩三级视频| 在线亚洲免费视频| 91成人网在线| 日本高清视频一区二区| aaa欧美色吧激情视频| 国产成人免费在线| 韩国欧美一区二区| 韩国av一区二区| 国产精品中文字幕日韩精品| 久久成人免费网站| 国产综合一区二区| 国产精一区二区三区| 国产一区福利在线| 韩日av一区二区| 国产精华液一区二区三区| 国产美女精品一区二区三区| 久久精品国产精品青草| 久久99久久精品| 韩国一区二区三区| 国产iv一区二区三区| 不卡免费追剧大全电视剧网站| 成人aa视频在线观看| 91视频免费看| 欧美日韩色综合| 日韩欧美综合一区| 2021国产精品久久精品| 久久久亚洲综合| 一区在线播放视频| 一区二区三国产精华液| 亚洲妇女屁股眼交7| 日本最新不卡在线| 国产精品18久久久久久vr| 粉嫩av一区二区三区| 91免费视频网| 8x8x8国产精品| 久久综合九色综合97婷婷女人 | 色综合天天综合| 欧美日免费三级在线| 欧美videos中文字幕| 国产精品成人网| 亚洲电影在线免费观看| 久久99在线观看| kk眼镜猥琐国模调教系列一区二区 | 国产麻豆成人传媒免费观看| 成人免费不卡视频| 欧美日韩国产小视频在线观看| 日韩你懂的在线观看| 亚洲欧洲av另类| 日韩电影一区二区三区四区| 国产成人福利片| 欧美区一区二区三区| 久久久久久99精品| 亚洲一区二区三区在线播放| 国产真实精品久久二三区| 欧美性感一区二区三区| 日韩天堂在线观看| 亚洲欧洲无码一区二区三区| 久久国产免费看| 欧美亚洲自拍偷拍| 国产视频一区二区三区在线观看|