欧美阿v视频在线大全_亚洲欧美中文日韩V在线观看_www性欧美日韩欧美91_亚洲欧美日韩久久精品

主頁 > 知識庫 > 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處理服務器返回的三種數據類型方法的相關信息資訊供網民參考!
  • 推薦文章
    欧美阿v视频在线大全_亚洲欧美中文日韩V在线观看_www性欧美日韩欧美91_亚洲欧美日韩久久精品
  • <rt id="w000q"><acronym id="w000q"></acronym></rt>
  • <abbr id="w000q"></abbr>
    <rt id="w000q"></rt>
    国产乱了高清露脸对白| 五月婷婷综合网| 国产日韩精品一区| 久久久www免费人成精品| 久久午夜羞羞影院免费观看| 精品久久久久久久一区二区蜜臀| 国产福利一区在线观看| 国产ts人妖一区二区| 麻豆91在线看| 欧美精三区欧美精三区| 色狠狠综合天天综合综合| 精品视频一区三区九区| 91精品国产一区二区三区| 欧美变态tickle挠乳网站| 久久日韩精品一区二区五区| 中文字幕高清不卡| 五月天亚洲精品| 欧美图片自拍偷拍| 国产av一区二区三区传媒| 免费在线观看日韩av| 蜜臀av粉嫩av懂色av| 国产视频精品视频| 国产又粗又猛又爽又黄av| 国产91对白在线观看九色| av午夜精品一区二区三区| 黑丝av在线播放| 中文字幕五月天| 51午夜精品国产| 中日韩免费视频中文字幕| 午夜影院久久久| 成人午夜看片网址| 久久精品国产亚洲AV熟女| 色8久久精品久久久久久蜜| 亚洲日本精品视频| 干b视频在线观看| 欧美视频中文一区二区三区在线观看| 欧美不卡激情三级在线观看| 中文字幕一区二区三区在线不卡| 美女诱惑一区二区| 少妇搡bbbb搡bbb搡打电话| 丁香花五月激情| 久久午夜电影网| 蜜桃精品视频在线| 欧产日产国产精品98| 在线观看国产一区二区| 国产精品免费看片| 处破女av一区二区| 欧洲精品在线观看| 7777精品伊人久久久大香线蕉最新版| 丰满少妇在线播放bd日韩电影| 一级黄色大片免费看| 色老综合老女人久久久| 亚洲欧美日韩久久精品| 成人sese在线| 色妹子一区二区| 亚洲欧美电影院| 台湾佬美性中文| 欧美日韩和欧美的一区二区| 一区二区国产视频| 中文写幕一区二区三区免费观成熟| 色美美综合视频| 亚洲sss视频在线视频| 国产精品入口麻豆| 欧美tk—视频vk| 国产一区二区精品在线观看| 亚洲精品国产精品乱码在线观看| 久久久美女毛片| 成人av在线播放网站| 欧美日本国产视频| 日韩一区欧美小说| 美女一区二区三区在线观看| 国产精品一区二区入口九绯色| 91精品国产欧美日韩| 精东粉嫩av免费一区二区三区| 香蕉成人在线视频| 亚洲综合自拍偷拍| 亚洲第一页av| 亚洲视频在线一区观看| 免费黄色三级网站| 国产日韩欧美麻豆| 99国产欧美另类久久久精品| 日韩一区二区三区电影| 91麻豆精品国产91久久久久久久久 | 亚洲摸摸操操av| 中文字幕高清视频| 亚洲色图欧洲色图| 91国模少妇一区二区三区| 亚洲欧美日韩国产综合| 性少妇bbw张开| 亚洲激情第一区| 黄色精品一二区| 五月天婷婷色综合| 美腿丝袜一区二区三区| 色先锋aa成人| 国产黑丝在线一区二区三区| 7777精品伊人久久久大香线蕉完整版| 国产九色精品成人porny| 在线综合+亚洲+欧美中文字幕| 成人网页在线观看| 久久综合九色综合欧美就去吻| 9191在线视频| 玉足女爽爽91| 一本色道亚洲精品aⅴ| 韩国在线一区二区| 日韩精品专区在线影院观看| 少妇搡bbbb搡bbb搡打电话| 亚洲私人黄色宅男| 黄色片子在线观看| 国产电影一区二区三区| 久久午夜电影网| 人与嘼交av免费| 国产一区二区三区视频在线播放| 日韩久久久精品| 国产国语老龄妇女a片| 亚洲一区二三区| 欧美日韩国产中文| 国产污在线观看| 久久久久无码精品国产sm果冻| 日韩在线一二三区| 亚洲欧美日韩偷拍| 亚洲第一主播视频| 欧美tickle裸体挠脚心vk| 中文字幕在线看高清电影| 久久精品噜噜噜成人88aⅴ| 精品sm在线观看| 亚洲综合图片一区| www.99精品| 亚洲国产成人av好男人在线观看| 日韩无一区二区| 精品一区二区三孕妇视频| 不卡的看片网站| 一区二区三区产品免费精品久久75| 欧美精品在线观看播放| 国产精品亚洲无码| 成人性生交大片免费看视频在线| 亚洲精品日产精品乱码不卡| 在线播放中文字幕一区| 91网站免费视频| 免费成人在线观看| 日韩限制级电影在线观看| 在线免费观看视频| av在线播放一区二区三区| 午夜成人在线视频| 国产欧美一区二区三区在线看蜜臀 | 亚洲视频在线观看三级| 欧美精品v国产精品v日韩精品| 黄色正能量网站| 99r国产精品| 精品一区二区三区香蕉蜜桃| 亚洲人快播电影网| 亚洲精品一区二区三区99| 91国偷自产一区二区开放时间| a级大片在线观看| 美女搡bbb又爽又猛又黄www| 国产精品99久| 久久99精品国产麻豆不卡| 亚洲精品大片www| 国产精品欧美一级免费| 精品剧情在线观看| 黄色录像一级片| 久久精品72免费观看| 樱花草国产18久久久久| 欧美国产一区视频在线观看| 欧美一区二区三区影视| 欧美日韩专区在线| 一本在线高清不卡dvd| 伊人久久久久久久久久久久久久| 30一40一50老女人毛片| 免费成人蒂法网站| 美女网站视频在线观看| 超级砰砰砰97免费观看最新一期 | 久久久久国产精品厨房| 精品国产网站在线观看| 欧美成人aa大片| 精品国产亚洲一区二区三区在线观看 | 国产一区二区福利视频| 精品亚洲免费视频| 国产一区二区三区四区在线观看| 久久国产成人午夜av影院| 久久国产精品99久久久久久老狼| 日韩电影在线观看一区| 奇米亚洲午夜久久精品| 看电影不卡的网站| 国产剧情av麻豆香蕉精品| 日本aⅴ免费视频一区二区三区 | 欧美一级艳片视频免费观看| 欧美成人高清电影在线| 久久影院视频免费| 国产精品国产三级国产aⅴ入口 | 欧美一区二区三区啪啪| 日韩视频一区二区| 久久精品在线观看| 亚洲免费观看视频| 日本人妖一区二区| 国产成人午夜视频| 亚洲熟女一区二区三区| 精品无人区无码乱码毛片国产| 色欲一区二区三区精品a片| 欧洲精品在线观看| 亚洲精品一区二区三区蜜桃下载|