溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

如何使用局部刷新Ajax技術(shù)

發(fā)布時間:2021-10-25 11:43:35 來源:億速云 閱讀:159 作者:iii 欄目:web開發(fā)

這篇文章主要介紹“如何使用局部刷新Ajax技術(shù)”,在日常操作中,相信很多人在如何使用局部刷新Ajax技術(shù)問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”如何使用局部刷新Ajax技術(shù)”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!

1. Ajax的概念?

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

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

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

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

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

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

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

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

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

  • 核心技術(shù):Ajax的核心技術(shù)是XMLHttpRequest,它是JavaScript中的一個對象

  • 減輕了服務(wù)器端負擔,將一部分以前由服務(wù)器負擔的工作轉(zhuǎn)移到客戶端執(zhí)行,利用客戶端閑置的資源進行處理

  • 在只局部刷新的情況下更新頁面,增加了頁面反應速度,使用戶體驗更友好

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

  • Ajax的缺點是不利于SEO推廣優(yōu)化,因為搜索引擎無法直接訪問到Ajax請求的內(nèi)容

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

「主要作用:」

  • 發(fā)送同步或者異步請求

  • 進行網(wǎng)頁的局部刷新

  • 下拉列表的數(shù)據(jù)來源于服務(wù)器的這種

  • 做前后分離的開發(fā)

  • 表單元素的動態(tài)認證

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

「使用步驟:」

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

function getAjax () {     var ajax;     try{      ajax=new ActiveXObject("microsoft.xmlhttp");     }catch(e){      try{       ajax=new XMLHttpRequest();      }catch(e){       alert('異步都沒有 換瀏覽器吧....');      }     }     return ajax;   }

獲取Ajax對象

var ajax=getAjax();

準備發(fā)送Ajax請求

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

發(fā)送Ajax請求

ajax.send(null);

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

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

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

if(ajax.status==200){//說明服務(wù)器的響應是正確的         var time=ajax.responseText;         //要將這個數(shù)據(jù)直接賦值給一個一個標簽         document.getElementsByTagName('span')[0].innerText=time;       }

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

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

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

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

到此,關(guān)于“如何使用局部刷新Ajax技術(shù)”的學習就結(jié)束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續(xù)學習更多相關(guān)知識,請繼續(xù)關(guān)注億速云網(wǎng)站,小編會繼續(xù)努力為大家?guī)砀鄬嵱玫奈恼拢?/p>

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI