濮阳杆衣贸易有限公司

主頁 > 知識庫 > Ajax 框架學(xué)習(xí)筆記

Ajax 框架學(xué)習(xí)筆記

熱門標(biāo)簽:許昌智能電銷機器人公司 辰溪地圖標(biāo)注 上海浦東騰訊地圖標(biāo)注位置 遼寧銀行智能外呼系統(tǒng) 姜堰電銷機器人 遼寧正規(guī)電銷機器人 海南銀行智能外呼系統(tǒng)商家 電銷機器人違法了嗎 澳大利亞城市地圖標(biāo)注

一.XMLHttpRequest 對象的三個重要的屬性。

onreadystatechange 屬性

onreadystatechange 屬性存有處理服務(wù)器響應(yīng)的函數(shù)。下面的代碼定義一個空的函數(shù),可同時對 onreadystatechange 屬性進行設(shè)置:

xmlHttp.onreadystatechange=function()

{

  // 我們需要在這里寫一些代碼

  }

readyState 屬性

readyState 屬性存有服務(wù)器響應(yīng)的狀態(tài)信息。每當(dāng) readyState 改變時,onreadystatechange 函數(shù)就會被執(zhí)行。

這是 readyState 屬性可能的值:

狀態(tài)

描述

0

請求未初始化(在調(diào)用 open() 之前)

1

請求已提出(調(diào)用 send() 之前)

2

請求已發(fā)送(這里通常可以從響應(yīng)得到內(nèi)容頭部)

3

請求處理中(響應(yīng)中通常有部分?jǐn)?shù)據(jù)可用,但是服務(wù)器還沒有完成響應(yīng))

4

請求已完成(可以訪問服務(wù)器響應(yīng)并使用它)

我們要向這個 onreadystatechange 函數(shù)添加一條 If 語句,來測試我們的響應(yīng)是否已完成(意味著可獲得數(shù)據(jù)):

xmlHttp.onreadystatechange=function()

  {

  if(xmlHttp.readyState==4)

    {

    // 從服務(wù)器的response獲得數(shù)據(jù)

    }

  }

responseText 屬性

可以通過 responseText 屬性來取回由服務(wù)器返回的數(shù)據(jù)。

 

 

二.基本源碼:

var xmlHttp

 

function showCustomer(str)

{

xmlHttp=GetXmlHttpObject();

if (xmlHttp==null)

  {

  alert ("Your browser does not support AJAX!");

  return;

  }

//設(shè)置請求響應(yīng)的url

var url="getcustomer_xml.asp";

url=url+"?q="+str;

url=url+"sid="+Math.random();

 

xmlHttp.onreadystatechange=stateChanged;

xmlHttp.open("GET",url,true);

xmlHttp.send(null);

}

 

function stateChanged()

{

if (xmlHttp.readyState==4)

{

//responseText 以字符串返回 HTTP 響應(yīng)

//document.getElementById("txtHint").innerHTML=xmlHttp.responseText;

 

//responseXML 以 XML 返回響應(yīng)

//服務(wù)器端ContentType 屬性為 response 對象設(shè)置了 HTTP 內(nèi)容類型。該屬性的默認值是 "text/html"。服務(wù)器端返回responseXML 要把內(nèi)容類型設(shè)置為 XML。

var xmlDoc=xmlHttp.responseXML.documentElement;

document.getElementById("companyname").innerHTML=

xmlDoc.getElementsByTagName("compname")[0].childNodes[0].nodeValue;

document.getElementById("contactname").innerHTML=

xmlDoc.getElementsByTagName("contname")[0].childNodes[0].nodeValue;

document.getElementById("address").innerHTML=

xmlDoc.getElementsByTagName("address")[0].childNodes[0].nodeValue;

document.getElementById("city").innerHTML=

xmlDoc.getElementsByTagName("city")[0].childNodes[0].nodeValue;

document.getElementById("country").innerHTML=

xmlDoc.getElementsByTagName("country")[0].childNodes[0].nodeValue;

}

}

 

function GetXmlHttpObject()

{

var xmlHttp=null;

try

  {

  // Firefox, Opera 8.0+, Safari

  xmlHttp=new XMLHttpRequest();

  }

catch (e)

  {

  // Internet Explorer

  try

    {

    xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");

    }

  catch (e)

    {

    xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");

    }

  }

return xmlHttp;

}

 

三.Ajax框架:基于瀏覽器的應(yīng)用框架,基于服務(wù)器端的應(yīng)用框架。

1.基于瀏覽器的應(yīng)用框架一般分為兩種:

Aplication frameworks:提供了瀏覽器功能,但其最著名的還是在于通過窗口生成組件建立桌面GUI。 如:DOJO,qooxdoo,JavaFX,YUI,ExtJS(最開始的名字是yui-ext,因為擴展了yui的庫,后來發(fā)展為可選擇擴展jquery和prototype就改名字為ext),F(xiàn)lex(與ExtJS有很多相似),TIBET等。

Infrastructural frameworks:提供基本的框架功能和輕便式瀏覽器端操作,讓開發(fā)者去創(chuàng)建具體應(yīng)用,主要功能包括:

  •  
    • 基于XMLHttpRequest組件的瀏覽器交互功能
    • XML解析和操作功能
    • 根據(jù)XMLHttpRequest的返回信息進行相應(yīng)的DOM操作
    • 一些特殊情況下,和其他的瀏覽器端技術(shù)如Flash(或Java Applets)等集合到一起應(yīng)用

如:jQuery(代碼量少),prototype,MooTools(功能比prototype強大,設(shè)計比prototype完善,從prototype中汲取很多有益的設(shè)計理念),Google AJAXSLT,F(xiàn)lash/JavaScript,等。

2.基于服務(wù)器端的應(yīng)用框架通常以下面兩種方式工作(盡管它們根據(jù)不同的語言進行了分類) :

HTML/JS Generation(HTML/JS生成):通過服務(wù)器端生成HTML和JS代碼在傳遞給瀏覽器端進行直接運行 。如:Ext GWT。

遠程交互:JavaScript調(diào)用服務(wù)器端函數(shù)(例如調(diào)用Java函數(shù))并返回給JavaScript的回調(diào)句柄,或者請求服務(wù)器端數(shù)據(jù)信息,例如Session信息,數(shù)據(jù)庫查詢等。 如DWR。

您可能感興趣的文章:
  • 無框架 Ajax分頁(原創(chuàng))
  • AJAX 圖片展示框架56個 提升開發(fā)效率
  • AJAX 驗證框架13個
  • PHP 開源AJAX框架14種
  • jquery 框架使用教程 AJAX篇
  • Jquery AJAX 框架的使用方法
  • 基于JQuery框架的AJAX實例代碼
  • javascript之AJAX框架使用說明
  • asp.net省市三級聯(lián)動的DropDownList+Ajax的三種框架(aspnet/Jquery/ExtJs)示例
  • 簡單的前端js+ajax 購物車框架(入門篇)
  • 簡單介紹不用庫(框架)自己寫ajax

標(biāo)簽:晉城 威海 撫州 深圳 西藏 伊春 銅川 崇左

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《Ajax 框架學(xué)習(xí)筆記》,本文關(guān)鍵詞  Ajax,框架,學(xué)習(xí),筆記,Ajax,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《Ajax 框架學(xué)習(xí)筆記》相關(guān)的同類信息!
  • 本頁收集關(guān)于Ajax 框架學(xué)習(xí)筆記的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    子长县| 米泉市| 龙南县| 尼勒克县| 临沭县| 揭东县| 平乐县| 洞口县| 临西县| 丽水市| 新平| 新乡县| 云霄县| 苏尼特左旗| 开化县| 桃园市| 马鞍山市| 临泽县| 沂水县| 永兴县| 腾冲县| 无为县| 广丰县| 抚州市| 台州市| 曲阜市| 华亭县| 峨山| 阿克苏市| 西宁市| 镇雄县| 龙岩市| 洛宁县| 当涂县| 民丰县| 夏津县| 阳城县| 靖西县| 温宿县| 汨罗市| 大名县|