日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢(xún)
選擇下列產(chǎn)品馬上在線(xiàn)溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問(wèn)題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷(xiāo)解決方案
異步編程|五分鐘讓你學(xué)會(huì)局部刷新Ajax技術(shù)

 前言

成都創(chuàng)新互聯(lián)公司主要從事成都做網(wǎng)站、成都網(wǎng)站設(shè)計(jì)、網(wǎng)頁(yè)設(shè)計(jì)、企業(yè)做網(wǎng)站、公司建網(wǎng)站等業(yè)務(wù)。立足成都服務(wù)大安市,十多年網(wǎng)站建設(shè)經(jīng)驗(yàn),價(jià)格優(yōu)惠、服務(wù)專(zhuān)業(yè),歡迎來(lái)電咨詢(xún)建站服務(wù):13518219792

Ajax是Asynchronous JavaScript and XML的縮寫(xiě),是JavaScript、XML、CSS、DOM等多個(gè)技術(shù)的組合。Ajax的工作原理是一個(gè)頁(yè)面的指定位置可以加載另一個(gè)頁(yè)面所有的輸出內(nèi)容,這樣就實(shí)現(xiàn)了一個(gè)靜態(tài)頁(yè)面也能獲取到數(shù)據(jù)庫(kù)中的返回?cái)?shù)據(jù)信息了。所以Ajax技術(shù)實(shí)現(xiàn)了一個(gè)靜態(tài)網(wǎng)頁(yè)在不刷新整個(gè)頁(yè)面的情況下與服務(wù)器通信,減少了用戶(hù)等待時(shí)間,同時(shí)也降低了網(wǎng)絡(luò)流量,增強(qiáng)了客戶(hù)體驗(yàn)的友好程度。本文將為大家詳細(xì)介紹關(guān)于Ajax的工作原理以及實(shí)現(xiàn)步驟。

1. Ajax的概念?

「以前瀏覽器如何實(shí)現(xiàn)通信呢:」

Jsp頁(yè)面發(fā)送請(qǐng)求--->servlet進(jìn)行接收--->數(shù)據(jù)放到域?qū)ο?-->轉(zhuǎn)發(fā)給jsp頁(yè)面

同步的發(fā)送請(qǐng)求:這個(gè)請(qǐng)求的特點(diǎn),我們每一次的轉(zhuǎn)發(fā),瀏覽器都要重新渲染整個(gè)頁(yè)面、假設(shè)我的頁(yè)面有100k的數(shù)據(jù),只有1k的數(shù)據(jù)需要刷新,如果使用轉(zhuǎn)發(fā)的方式的話(huà)那么每一次渲染的數(shù)據(jù)都是100k,這樣瀏覽器的渲染壓力就變大了

「Ajax技術(shù)實(shí)現(xiàn)通信:」

引入Ajax:假設(shè)我們使用了Ajax的技術(shù)的話(huà),那么我們這100k的數(shù)據(jù)我們有99k的數(shù)據(jù)都不需要刷新,只是需要刷新這1k的數(shù)據(jù),這就是Ajax

在一開(kāi)始的時(shí)候,所有的瀏覽器并不支持所謂的局部刷新技術(shù),而且一開(kāi)始大多數(shù)的瀏覽器并不看好這門(mén)技術(shù),這個(gè)時(shí)候微軟首先就在IE瀏覽器中引入了異步請(qǐng)求的這個(gè)概念,到后來(lái)看到了Ajax在瀏覽器上的優(yōu)秀表現(xiàn),于是其他的瀏覽器廠(chǎng)商也就引入了Ajax這個(gè)技術(shù)

含義:Ajax是用于網(wǎng)頁(yè)上面進(jìn)行局部刷新的一門(mén)技術(shù)

2、Ajax技術(shù)的優(yōu)缺點(diǎn)

「Ajax技術(shù)優(yōu)點(diǎn):」

  • 核心技術(shù):Ajax的核心技術(shù)是XMLHttpRequest,它是JavaScript中的一個(gè)對(duì)象
  • 減輕了服務(wù)器端負(fù)擔(dān),將一部分以前由服務(wù)器負(fù)擔(dān)的工作轉(zhuǎn)移到客戶(hù)端執(zhí)行,利用客戶(hù)端閑置的資源進(jìn)行處理
  • 在只局部刷新的情況下更新頁(yè)面,增加了頁(yè)面反應(yīng)速度,使用戶(hù)體驗(yàn)更友好

「Ajax技術(shù)缺點(diǎn):」

  • Ajax的缺點(diǎn)是不利于SEO推廣優(yōu)化,因?yàn)樗阉饕鏌o(wú)法直接訪(fǎng)問(wèn)到Ajax請(qǐng)求的內(nèi)容

3、Ajax技術(shù)能干嘛?

「主要作用:」

  • 發(fā)送同步或者異步請(qǐng)求
  • 進(jìn)行網(wǎng)頁(yè)的局部刷新
  • 下拉列表的數(shù)據(jù)來(lái)源于服務(wù)器的這種
  • 做前后分離的開(kāi)發(fā)
  • 表單元素的動(dòng)態(tài)認(rèn)證

4、Ajax技術(shù)的具體使用

「使用步驟:」

創(chuàng)建獲取Ajax對(duì)象的方法

 
 
 
 
  1. function getAjax () {
  2.     var ajax;
  3.     try{
  4.      ajax=new ActiveXObject("microsoft.xmlhttp");
  5.     }catch(e){
  6.      try{
  7.       ajax=new XMLHttpRequest();
  8.      }catch(e){
  9.       alert('異步都沒(méi)有 換瀏覽器吧....');
  10.      }
  11.     }
  12.     return ajax;
  13.   }

獲取Ajax對(duì)象

 
 
 
 
  1. var ajax=getAjax(); 

準(zhǔn)備發(fā)送Ajax請(qǐng)求

 
 
 
 
  1. ajax.open("GET","${pageContext.request.contextPath}/dates.action");

發(fā)送Ajax請(qǐng)求

 
 
 
 
  1. ajax.send(null);

監(jiān)聽(tīng)Ajax中4種狀態(tài)

 
 
 
 
  1. ajax.onreadystatechange=function(){
  2.         if(ajax.readyState==4){ /
  3.     }
  4. }

判斷服務(wù)器是否成功響應(yīng)

 
 
 
 
  1. if(ajax.status==200){//說(shuō)明服務(wù)器的響應(yīng)是正確的
  2.         var time=ajax.responseText;
  3.         //要將這個(gè)數(shù)據(jù)直接賦值給一個(gè)一個(gè)標(biāo)簽
  4.         document.getElementsByTagName('span')[0].innerText=time;
  5.       }

Get方法數(shù)據(jù)傳輸(放到url后面)

 
 
 
 
  1. ajax.open("GET","${pageContext.request.contextPath}/dates.action?userName=qianyu&password=123");

Post方式發(fā)送請(qǐng)求和數(shù)據(jù)

 
 
 
 
  1. //設(shè)置請(qǐng)求頭       
  2. ajax.setRequestHeader("Content-type","application/x-www-form-urlencoded");
  3. //發(fā)送數(shù)據(jù)
  4. ajax.send("userName=qianyu&password=123");

結(jié)語(yǔ)

本篇關(guān)于Ajax的介紹就先到這里結(jié)束了,后續(xù)會(huì)出更多關(guān)于Ajax系列更多文章,謝謝大家支持!


新聞標(biāo)題:異步編程|五分鐘讓你學(xué)會(huì)局部刷新Ajax技術(shù)
文章路徑:http://www.5511xx.com/article/dhesioe.html