婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > 強烈推薦-ajax開發者必看的文章第1/3頁

強烈推薦-ajax開發者必看的文章第1/3頁

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

七、AJAX開發
  到這里,已經可以清楚的知道AJAX是什么,AJAX能做什么,AJAX什么地方不好。如果你覺得AJAX真的能給你的開發工作帶來改進的話,那么繼續看看怎么使用AJAX吧。

7.1、AJAX應用到的技術
  AJAX涉及到的7項技術中,個人認為Javascript、XMLHttpRequest、DOM、XML比較有用。

A、XMLHttpRequest對象
  XMLHttpRequest是XMLHTTP組件的對象,通過這個對象,AJAX可以像桌面應用程序一樣只同服務器進行數據層面的交換,而不用每次都刷新界面,也不用每次將數據處理的工作都交給服務器來做;這樣既減輕了服務器負擔又加快了響應速度、縮短了用戶等待的時間。

  IE5.0開始,開發人員可以在Web頁面內部使用XMLHTTP ActiveX組件擴展自身的功能,不用從當前的Web頁面導航就可以直接傳輸數據到服務器或者從服務器接收數據。,Mozilla1.0以及NetScape7則是創建繼承XML的代理類XMLHttpRequest;對于大多數情況,XMLHttpRequest對象和XMLHTTP組件很相似,方法和屬性類似,只是部分屬性不同。

XMLHttpRequest對象初始化:
script language=”javascript”>
var http_request = false;
//IE瀏覽器
http_request = new ActiveXObject("Msxml2.XMLHTTP");
http_request = new ActiveXObject("Microsoft.XMLHTTP");
//Mozilla瀏覽器
http_request = new XMLHttpRequest();
/script>

  XMLHttpRequest對象的方法:

方法 描述
abort()

停止當前請求

getAllResponseHeaders()

作為字符串返回完整的headers

getResponseHeader("headerLabel")

作為字符串返回單個的header標簽

open("method","URL"[,asyncFlag[,"userName"[, "password"]]]) 設置未決的請求的目標 URL,方法,和其他參數
send(content) 發送請求
setRequestHeader("label", "value") 設置header并和請求一起發送

  XMLHttpRequest對象的屬性:

屬性 描述
onreadystatechange 狀態改變的事件觸發器
readyState 對象狀態(integer):

 


0 = 未初始化
1 = 讀取中
2 = 已讀取
3 = 交互中
4 = 完成
responseText 服務器進程返回數據的文本版本
responseXML 服務器進程返回數據的兼容DOM的XML文檔對象
status 服務器返回的狀態碼, 如:404 = "文件未找到" 、200 ="成功"
statusText 服務器返回的狀態文本信息

B、Javascript
   Javascript一直被定位為客戶端的腳本語言,應用最多的地方是表單數據的校驗。現在,可以通過Javascript操作XMLHttpRequest,來跟數據庫打交道。

C、DOM
   DOM(Document Object Model)是提供給HTML和XML使用的一組API,提供了文件的表述結構,并可以利用它改變其中的內容和可見物。腳本語言通過DOM才可以跟頁面進行交互。Web開發人員可操作及建立文件的屬性、方法以及事件都以對象來展現。比如,document就代表頁面對象本身。

D、XML
  通過XML(Extensible Markup Language),可以規范的定義結構化數據,是網上傳輸的數據和文檔符合統一的標準。用XML表述的數據和文檔,可以很容易的讓所有程序共享。

7.2、AJAX開發框架
  這里,我們通過一步步的解析,來形成一個發送和接收XMLHttpRequest請求的程序框架。AJAX實質上也是遵循Request/Server模式,所以這個框架基本的流程也是:對象初始化à發送請求à服務器接收à服務器返回à客戶端接收à修改客戶端頁面內容。只不過這個過程是異步的。

A、初始化對象并發出XMLHttpRequest請求
  為了讓Javascript可以向服務器發送HTTP請求,必須使用XMLHttpRequest對象。使用之前,要先將XMLHttpRequest對象實例化。之前說過,各個瀏覽器對這個實例化過程實現不同。IE以ActiveX控件的形式提供,而Mozilla等瀏覽器則直接以XMLHttpRequest類的形式提供。為了讓編寫的程序能夠跨瀏覽器運行,要這樣寫:
if (window.XMLHttpRequest) { // Mozilla, Safari, ...
http_request = new XMLHttpRequest();
}
else if (window.ActiveXObject) { // IE
http_request = new ActiveXObject("Microsoft.XMLHTTP");
}

  有些版本的Mozilla瀏覽器處理服務器返回的未包含XML mime-type頭部信息的內容時會出錯。因此,要確保返回的內容包含text/xml信息。

http_request = new XMLHttpRequest();
http_request.overrideMimeType('text/xml');
B、指定響應處理函數
  接下來要指定當服務器返回信息時客戶端的處理方式。只要將相應的處理函數名稱賦給XMLHttpRequest對象的onreadystatechange屬性就可以了。比如:

 

http_request.onreadystatechange = processRequest;

  需要指出的時,這個函數名稱不加括號,不指定參數。也可以用Javascript即時定義函數的方式定義響應函數。比如:

http_request.onreadystatechange = function() { };

C、發出HTTP請求 

  指定響應處理函數之后,就可以向服務器發出HTTP請求了。這一步調用XMLHttpRequest對象的open和send方法。

http_request.open('GET', 'http://www.example.org/some.file', true);
http_request.send(null);

  open的第一個參數是HTTP請求的方法,為Get、Post或者Head。

  open的第二個參數是目標URL。基于安全考慮,這個URL只能是同網域的,否則會提示“沒有權限”的錯誤。這個URL可以是任何的URL,包括需要服務器解釋執行的頁面,不僅僅是靜態頁面。目標URL處理請求XMLHttpRequest請求則跟處理普通的HTTP請求一樣,比如JSP可以用request.getParameter(“”)或者request.getAttribute(“”)來取得URL參數值。

  open的第三個參數只是指定在等待服務器返回信息的時間內是否繼續執行下面的代碼。如果為True,則不會繼續執行,直到服務器返回信息。默認為True。

  按照順序,open調用完畢之后要調用send方法。send的參數如果是以Post方式發出的話,可以是任何想傳給服務器的內容。不過,跟form一樣,如果要傳文件或者Post內容給服務器,必須先調用setRequestHeader方法,修改MIME類別。如下:

http_request.setRequestHeader(“Content-Type”,”application/x-www-form-urlencoded”);

  這時資料則以查詢字符串的形式列出,作為sned的參數,例如:

name=valueanothername=othervalueso=on
D、處理服務器返回的信息
  在第二步我們已經指定了響應處理函數,這一步,來看看這個響應處理函數都應該做什么。

  首先,它要檢查XMLHttpRequest對象的readyState值,判斷請求目前的狀態。參照前文的屬性表可以知道,readyState值為4的時候,代表服務器已經傳回所有的信息,可以開始處理信息并更新頁面內容了。如下:

if (http_request.readyState == 4) {
// 信息已經返回,可以開始處理
} else {
// 信息還沒有返回,等待
}

  服務器返回信息后,還需要判斷返回的HTTP狀態碼,確定返回的頁面沒有錯誤。所有的狀態碼都可以在W3C的官方網站上查到。其中,200代表頁面正常。

if (http_request.status == 200) {
// 頁面正常,可以開始處理信息
} else {
// 頁面有問題
}

  XMLHttpRequest對成功返回的信息有兩種處理方式:
   responseText:將傳回的信息當字符串使用;
   responseXML:將傳回的信息當XML文檔使用,可以用DOM處理。

E、一個初步的開發框架
  總結上面的步驟,我們整理出一個初步的可用的開發框架,供以后調用;這里,將服務器返回的信息用window.alert以字符串的形式顯示出來:
script language="javascript">
var http_request = false;
function send_request(url) {//初始化、指定處理函數、發送請求的函數
http_request = false;
//開始初始化XMLHttpRequest對象
if(window.XMLHttpRequest) { //Mozilla 瀏覽器
http_request = new XMLHttpRequest();
if (http_request.overrideMimeType) {//設置MiME類別
http_request.overrideMimeType("text/xml");
}
}
else if (window.ActiveXObject) { // IE瀏覽器
try {
http_request = new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
try {
http_request = new ActiveXObject("Microsoft.XMLHTTP");
} catch (e) {}
}
}
if (!http_request) { // 異常,創建對象實例失敗
window.alert("不能創建XMLHttpRequest對象實例.");
return false;
}
http_request.onreadystatechange = processRequest;
// 確定發送請求的方式和URL以及是否同步執行下段代碼
http_request.open("GET", url, true);
http_request.send(null);
}
// 處理返回信息的函數
function processRequest() {
if (http_request.readyState == 4) { // 判斷對象狀態
if (http_request.status == 200) { // 信息已經成功返回,開始處理信息
alert(http_request.responseText);
} else { //頁面不正常
alert("您所請求的頁面有異常。");
}
}
}
/script>
7.3、簡單的示例
  接下來,我們利用上面的開發框架來做兩個簡單的應用。

A、數據校驗
  在用戶注冊的表單中,經常碰到要檢驗待注冊的用戶名是否唯一。傳統的做法是采用window.open的彈出窗口,或者window. showModalDialog的對話框。不過,這兩個都需要打開窗口。采用AJAX后,采用異步方式直接將參數提交到服務器,用window.alert將服務器返回的校驗信息顯示出來。代碼如下:

  在body>/body>之間增加一段form表單代碼:

form name="form1" action="" method="post">
用戶名:input type="text" name="username" value="">nbsp;
input type="button" name="check" value="唯一性檢查" onClick="userCheck()">
input type="submit" name="submit" value="提交">
/form>

  在開發框架的基礎上再增加一個調用函數:

function userCheck() {
var f = document.form1;
var username = f.username.value;
if(username=="") {
window.alert("用戶名不能為空。");
f.username.focus();
return false;
}
else {
send_request('sample1_2.jsp?username='+username);
}
}

  看看sample1_2.jsp做了什么:

%@ page contentType="text/html; charset=gb2312" errorPage="" %>
%
String username = request.getParameter("username");
if("educhina".equals(username)) out.print("用戶名已經被注冊,請更換一個用戶名。");
else out.print("用戶名尚未被使用,您可以繼續。");
%>

  運行一下,嗯,沒有彈出窗口,沒有頁面刷新,跟預想的效果一樣。如果需要的話,可以在sample1_2.jsp中實現更復雜的功能。最后,只要將反饋信息打印出來就可以了。


B、級聯菜單
  我們在第五部分提到利用AJAX改進級聯菜單的設計。接下來,我們就演示一下如何“按需取數據”。

  首先,在body>/body>中間增加如下HTML代碼:

table width="200" border="0" cellspacing="0" cellpadding="0">
tr>
td height="20">
a href="javascript:void(0)" onClick="showRoles('pos_1')">經理室/a>
/td>
/tr>
tr style="display:none">
td height="20" id="pos_1"> /td>
/tr>
tr>
td height="20">
a href="javascript:void(0)" onClick="showRoles('pos_2')">開發部/a>
/td>
/tr>
tr style="display:none ">
td id="pos_2" height="20"> /td>
/tr>
/table>

  在框架的基礎上增加一個響應函數showRoles(obj):

//顯示部門下的崗位
function showRoles(obj) {
document.getElementById(obj).parentNode.style.display = "";
document.getElementById(obj).innerHTML = "正在讀取數據..."
currentPos = obj;
send_request("sample2_2.jsp?playPos="+obj);
}

  修改框架的processRequest函數:

// 處理返回信息的函數
function processRequest() {
if (http_request.readyState == 4) { // 判斷對象狀態
if (http_request.status == 200) { // 信息已經成功返回,開始處理信息
document.getElementById(currentPos).innerHTML = http_request.responseText;
} else { //頁面不正常
alert("您所請求的頁面有異常。");
}
}
}

  最后就是smaple2_2.jsp了:

%@ page contentType="text/html; charset=gb2312" errorPage="" %>
%
String playPos = request.getParameter("playPos"); if("pos_1".equals(playPos)) out.print("nbsp;nbsp;總經理br>nbsp;nbsp;副總經理"); else if("pos_2".equals(playPos)) out.println("nbsp;nbsp;總工程師br>nbsp;nbsp;軟件工程師");
%>

  運行一下看看效果:

7.4、文檔對象模型(DOM)
  文檔對象模型(DOM)是表示文檔(比如HTML和XML)和訪問、操作構成文檔的各種元素的應用程序接口(API)。一般的,支持Javascript的所有瀏覽器都支持DOM。本文所涉及的DOM,是指W3C定義的標準的文檔對象模型,它以樹形結構表示HTML和XML文檔,定義了遍歷這個樹和檢查、修改樹的節點的方法和屬性。
123下一頁閱讀全文

標簽:崇左 晉城 伊春 西藏 撫州 威海 銅川 深圳

巨人網絡通訊聲明:本文標題《強烈推薦-ajax開發者必看的文章第1/3頁》,本文關鍵詞  強烈,推薦,-ajax,開發者,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《強烈推薦-ajax開發者必看的文章第1/3頁》相關的同類信息!
  • 本頁收集關于強烈推薦-ajax開發者必看的文章第1/3頁的相關信息資訊供網民參考!
  • 推薦文章
    婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av
    国产人成一区二区三区影院| 国产日产欧美一区二区三区| 91福利视频网站| 精品女同一区二区| 亚洲网友自拍偷拍| 国产精品一区二区三区网站| 欧美色爱综合网| 中文字幕人成不卡一区| 国产成人免费av在线| 在线不卡一区二区| 亚洲曰韩产成在线| 92国产精品观看| 国产精品亲子伦对白| 久久99精品久久久久久久久久久久 | 91精品国产综合久久福利软件 | 国产亚洲女人久久久久毛片| 日本一不卡视频| 欧美日韩国产综合视频在线观看| 日韩一区在线免费观看| 成人黄色一级视频| 成人免费在线视频观看| 粉嫩av一区二区三区在线播放| 日韩欧美成人午夜| 久久成人久久爱| 欧美xxxxxxxxx| 国产综合一区二区| 国产日韩欧美不卡在线| 国产电影一区在线| 国产精品欧美一区喷水| eeuss影院一区二区三区| 国产精品美女久久久久久久久久久 | 亚洲一区二区三区美女| 欧美羞羞免费网站| 日韩av午夜在线观看| 日韩一级黄色大片| 免费av成人在线| 欧美一级专区免费大片| 免费亚洲电影在线| 久久伊人中文字幕| 国产校园另类小说区| 成人激情视频网站| 最近日韩中文字幕| 一本色道**综合亚洲精品蜜桃冫| 中文字幕中文字幕在线一区 | 国产三级精品三级在线专区| 国产一区二区福利视频| 中文一区二区在线观看| 91影院在线观看| 亚洲国产欧美在线| 欧美电视剧在线看免费| 粉嫩一区二区三区在线看| 亚洲免费观看高清完整版在线观看熊| 色婷婷综合激情| 免费成人美女在线观看.| 国产网红主播福利一区二区| 色先锋久久av资源部| 人禽交欧美网站| 国产精品美女一区二区| 欧美精品乱码久久久久久按摩| 精品中文字幕一区二区| 亚洲欧美日本在线| 91精品国产综合久久精品性色| 韩国在线一区二区| 亚洲黄色av一区| 欧美乱妇15p| 成人一区二区三区视频在线观看 | 免播放器亚洲一区| 色婷婷av一区二区三区gif| 成人一区二区视频| 精品国精品国产| 91国产精品成人| 欧美在线看片a免费观看| 99国产精品久久久久久久久久久| 亚洲区小说区图片区qvod| 精品国产乱码久久久久久久| 国产不卡在线播放| 偷拍日韩校园综合在线| 国产午夜精品理论片a级大结局| 欧美在线视频全部完| 亚洲精品成人悠悠色影视| 欧美v国产在线一区二区三区| 色婷婷综合久久久中文一区二区| 国产乱码精品一区二区三区av| 午夜视频在线观看一区二区| 亚洲欧美怡红院| 精品裸体舞一区二区三区| 99re66热这里只有精品3直播| 精品一区二区国语对白| 亚洲精品视频免费看| 亚洲视频在线观看一区| 午夜av区久久| 欧美国产在线观看| 欧美电影免费观看完整版| 欧美变态tickle挠乳网站| 亚洲午夜成aⅴ人片| 日本久久电影网| 日本不卡视频在线| 91精品国产综合久久精品图片| 欧美精品久久99久久在免费线| 亚洲国产综合视频在线观看| 国产精品亚洲第一区在线暖暖韩国 | 精品国产91洋老外米糕| 欧美日韩成人在线一区| 日本精品一级二级| 99久久99久久精品国产片果冻| 国产suv精品一区二区6| 国产美女精品人人做人人爽 | 欧美性受极品xxxx喷水| 粉嫩一区二区三区性色av| 亚洲欧美在线另类| 国产精品日产欧美久久久久| 亚洲乱码中文字幕综合| 国产精品色哟哟| 老司机精品视频导航| 在线成人小视频| 99re热这里只有精品免费视频| 国产91高潮流白浆在线麻豆 | 亚洲一区二区精品视频| 依依成人精品视频| 日本一区二区视频在线观看| 2019国产精品| 国产成人午夜高潮毛片| 久久 天天综合| 日韩制服丝袜av| 国产精品网站在线| 丰满岳乱妇一区二区三区| 国产一区二区三区四区五区入口| 欧美综合亚洲图片综合区| 亚洲国产视频一区二区| 欧美精品日韩一本| 欧美一区二区二区| 国产精品资源在线| 捆绑调教美女网站视频一区| 久久精品欧美日韩精品| 欧美在线观看一区| 国产成人综合在线| 国产精品夜夜爽| 亚洲成av人片在线| 色欧美88888久久久久久影院| 亚洲女人小视频在线观看| 国产精品不卡在线| 亚洲欧美一区二区三区孕妇| 国产精品欧美综合在线| 亚洲综合激情另类小说区| 日本 国产 欧美色综合| 美女免费视频一区二区| 国产一区二区伦理| 91毛片在线观看| 欧美日韩在线播放三区四区| 91精品国产综合久久久蜜臀粉嫩 | 一区二区三区在线免费播放| 亚洲.国产.中文慕字在线| 亚洲成人免费电影| 久久国产精品72免费观看| 粉嫩在线一区二区三区视频| 一本一本久久a久久精品综合麻豆| 欧美肥妇毛茸茸| 国产精品成人在线观看| 日韩高清电影一区| av在线播放一区二区三区| 91麻豆精品国产91久久久使用方法| 欧美成人aa大片| 亚洲欧洲国产日本综合| 美女久久久精品| 在线观看日韩毛片| 国产日产欧美一区| 亚洲精品免费在线观看| 亚洲综合视频在线| 免费在线观看成人| 成人精品电影在线观看| 在线91免费看| 国产婷婷色一区二区三区四区 | 99久久夜色精品国产网站| 777亚洲妇女| 中文字幕成人网| 九九热在线视频观看这里只有精品| 暴力调教一区二区三区| 精品成人一区二区三区| 亚洲成人7777| 一本色道久久加勒比精品| 国产精品午夜在线观看| 免费高清在线一区| 亚洲免费av高清| 国产欧美日韩视频在线观看| 五月婷婷综合激情| 一本久久综合亚洲鲁鲁五月天| 久久综合九色综合欧美就去吻| 五月婷婷综合在线| 欧洲国内综合视频| 亚洲欧美一区二区三区久本道91| 石原莉奈在线亚洲三区| 亚洲乱码国产乱码精品精可以看| 精品国产伦一区二区三区免费| 成人久久久精品乱码一区二区三区| 91久久精品午夜一区二区| 欧美激情一区在线| 在线视频一区二区三| 国产精品丝袜久久久久久app| 国产女人水真多18毛片18精品视频 | 国产精品的网站|