首頁 web前端 js教程 Ajax技術的核心以及方法屬性

Ajax技術的核心以及方法屬性

Mar 31, 2018 pm 03:06 PM
ajax 方法

這次帶給大家Ajax技術的核心以及方法屬性,使用Ajax技術核心以及方法屬性的注意事項有哪些,下面就是實戰案例,一起來看一下。

一、什麼是Ajax

Ajax英文全稱為「 Asynchr JavsScript and XML」(異步的JavaScript和XML),是一種創建互動式網頁的開發技術。

二、Ajax技術的核心

#Ajax是一系列相關技術的融合,其核心包括XMLHttpRequest、JavsScript和DOM技術,數據格式的不同可能會用到Json或XML的技術。

XMLHttpRequest是它的核心的內容,它能夠為頁面中的JavaScript腳本提供特定的通訊方式,從而使頁面的javascript腳本和伺服器之間形成動態互動的效果,XMLHTTPRequest的最大的優點是頁面內的javascript腳本可以不用刷新頁面,而直接和伺服器發生交互,從而實現頁面無刷新的效果。

三、XMLHttpRequest方法屬性描述

#1、方法描述

abort()停止目前請求

getAllResponseHeaders()把HTTP請求的所有回應首部作為鍵/值對傳回

getResponseHeader("header")傳回指定首部的字串值

#open( "method","URL",[asyncFlag],["userName"],["password"])建立對伺服器的呼叫。 method參數可以是GET、POST或PUT。

url參數可以是相對URL或絕對URL。這個方法還包括3個可選的參數,是否非同步,用戶名,密碼

send(content)向伺服器發送請求

setRequestHeader("header", "value")把指定首部設定為所提供的值。在設定任何首部之前必須先呼叫open()。

設定header並且和請求一起傳送('post'方法一定要)

XMLHttpRequest 物件屬性描述

2、方法描述

#onreadystatechange狀態改變的事件觸發器,每個狀態改變時都會觸發這個事件處理器,通常會呼叫一個JavaScript函數

readyState請求的狀態。有5個可取值:0 = 未初始化,1 = 正在加載,2 = 已加載,3 = 交互中,4 = 完成

responseText伺服器的回應,傳回資料的文字。

responseXML伺服器的回應,傳回資料的相容DOM的XML文件物件 ,這個物件可以解析為一個DOM物件

responseBody伺服器傳回的主題(非文字格式)

responseStream伺服器傳回的資料流

status伺服器的HTTP狀態碼(如:404 = "檔案結尾找到" 、200 ="成功" ,等等)

statusText伺服器傳回的狀態文字訊息,HTTP狀態碼的對應文字(OK或Not Found(找不到)等等)

四、Ajax工作原理原理

AJAX的工作原理相當於在使用者和伺服器之間加了一個中間層,使用戶操作與伺服器相應異步化。並不是所有的使用者請求

都提交給伺服器,像一些資料驗證和資料處理等都交給AJAX引擎自己來做,只有確定需要從伺服器讀取新資料時再由

AJAX引擎代為向伺服器提交請求。如圖:

#五、Ajax的優點

1、減輕伺服器的負擔,提升了網站的效能。

2、無刷新更新頁面,減少了使用者等待網站載入的時間。

3、使用者體驗更加友好,可以避免白屏的情況。

4、Ajax是基於標準化並且廣泛使用的技術幾乎所有的主流瀏覽器都支援該技術,ye不需要單獨安裝插件。

5、Ajax可以讓Web中的頁面和應用程式分離,方便分工合作。

六、Ajax缺點

1、對於行動裝置無法很好的支援。

2、Ajax幹掉了back按鈕,也就是對瀏覽器後退機制的破壞。

3、安全性問題。例如:跨網站腳步攻擊、SQL注入攻擊和基於credentials的安全漏洞等。

4、對搜尋引擎的支援比較弱。

5、破壞了程式的異常機制。至少從目前看來,像是ajax.dll,ajaxpro.dll這些ajax框架是會破壞程式的異常機制的。

造成調試的困難。

七、使用原則

#1、Ajax適用場景

表單驅動的互動

深層的樹的導航

快速的用戶與用戶間的交流響應

#類似投票、yes/no等無關痛癢的場景

對數據進行過濾和操縱相關資料的場景

普通的文字輸入提示和自動完成的場景

2、Ajax不適用場景

部分簡單的表單

搜尋

基本的導航

取代大量的文字

對呈現的操縱

#八、原生AJAX寫法

var XHR=null;
if (window.XMLHttpRequest) {
// 非IE内核
XHR = new XMLHttpRequest();
} else if (window.ActiveXObject) {
// IE内核,这里早期IE的版本写法不同,具体可以查询下
XHR = new ActiveXObject("Microsoft.XMLHTTP");
} else {
XHR = null;
}
if(XHR){
XHR.open("GET", "ajaxServer.action");
XHR.onreadystatechange = function () {
// readyState值说明
// 0,初始化,XHR对象已经创建,还未执行open
// 1,载入,已经调用open方法,但是还没发送请求
// 2,载入完成,请求已经发送完成
// 3,交互,可以接收到部分数据
// status值说明
// 200:成功
// 404:没有发现文件、查询或URl
// 500:服务器产生内部错误
if (XHR.readyState == 4 && XHR.status == 200) {
// 这里可以对返回的内容做处理
// 一般会返回JSON或XML数据格式
console.log(XHR.responseText);
// 主动释放,JS本身也会回收的
XHR = null;
}
};
XHR.send();
}
登入後複製

相信看了本文案例你已經掌握了方法,更多精彩請關注php中文網其它相關文章!

推薦閱讀:

如何實作AJAX的分頁效果

#實作清單無限載入與二級下拉選單選項的Ajax(附程式碼)

#

以上是Ajax技術的核心以及方法屬性的詳細內容。更多資訊請關注PHP中文網其他相關文章!

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

<🎜>:泡泡膠模擬器無窮大 - 如何獲取和使用皇家鑰匙
3 週前 By 尊渡假赌尊渡假赌尊渡假赌
北端:融合系統,解釋
3 週前 By 尊渡假赌尊渡假赌尊渡假赌
Mandragora:巫婆樹的耳語 - 如何解鎖抓鉤
3 週前 By 尊渡假赌尊渡假赌尊渡假赌

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

熱門話題

Java教學
1665
14
CakePHP 教程
1424
52
Laravel 教程
1321
25
PHP教程
1269
29
C# 教程
1249
24
微信刪除的人如何找回(簡單教學告訴你如何恢復被刪除的聯絡人) 微信刪除的人如何找回(簡單教學告訴你如何恢復被刪除的聯絡人) May 01, 2024 pm 12:01 PM

而後悔莫及、人們常常會因為一些原因不小心刪除某些聯絡人、微信作為一款廣泛使用的社群軟體。幫助用戶解決這個問題,本文將介紹如何透過簡單的方法找回被刪除的聯絡人。 1.了解微信聯絡人刪除機制這為我們找回被刪除的聯絡人提供了可能性、微信中的聯絡人刪除機制是將其從通訊錄中移除,但並未完全刪除。 2.使用微信內建「通訊錄恢復」功能微信提供了「通訊錄恢復」節省時間和精力,使用者可以透過此功能快速找回先前刪除的聯絡人,功能。 3.進入微信設定頁面點選右下角,開啟微信應用程式「我」再點選右上角設定圖示、進入設定頁面,,

七彩虹主機板怎麼進入bios?教你兩種方法 七彩虹主機板怎麼進入bios?教你兩種方法 Mar 13, 2024 pm 06:01 PM

  七彩虹主機板在中國國內市場享有較高的知名度和市場佔有率,但是有些七彩虹主機板的用戶還不清楚怎麼進入bios進行設定呢?針對這一情況,小編專門為大家帶來了兩種進入七彩虹主機板bios的方法,快來試試吧!方法一:使用u盤啟動快捷鍵直接進入u盤裝系統七彩虹主機板一鍵啟動u盤的快捷鍵是ESC或F11,首先使用黑鯊裝機大師製作一個黑鯊U盤啟動盤,然後開啟電腦,當看到開機畫面的時候,連續按下鍵盤上的ESC或F11鍵以後將會進入到一個啟動項順序選擇的窗口,將遊標移到顯示“USB”的地方,然

怎麼在番茄免費小說app中寫小說 分享番茄小說寫小說方法教程 怎麼在番茄免費小說app中寫小說 分享番茄小說寫小說方法教程 Mar 28, 2024 pm 12:50 PM

番茄小說是一款非常熱門的小說閱讀軟體,我們在番茄小說中經常會有新的小說和漫畫可以去閱讀,每一本小說和漫畫都很有意思,很多小伙伴也想著要去寫小說來賺取賺取零用錢,在把自己想要寫的小說內容編輯成文字,那麼我們要怎麼樣在這裡面去寫小說呢?小伙伴們都不知道,那就讓我們一起到本站本站中花點時間來看寫小說的方法介紹。分享番茄小說寫小說方法教學  1、先在手機上打開番茄免費小說app,點擊個人中心——作家中心  2、跳到番茄作家助手頁面——點擊創建新書在小說的結

手機版龍蛋孵化方法大揭密(一步一步教你如何成功孵化手機版龍蛋) 手機版龍蛋孵化方法大揭密(一步一步教你如何成功孵化手機版龍蛋) May 04, 2024 pm 06:01 PM

手機遊戲成為了人們生活中不可或缺的一部分,隨著科技的發展。它以其可愛的龍蛋形象和有趣的孵化過程吸引了眾多玩家的關注,而其中一款備受矚目的遊戲就是手機版龍蛋。幫助玩家們在遊戲中更好地培養和成長自己的小龍,本文將向大家介紹手機版龍蛋的孵化方法。 1.選擇合適的龍蛋種類玩家需要仔細選擇自己喜歡並且適合自己的龍蛋種類,根據遊戲中提供的不同種類的龍蛋屬性和能力。 2.提升孵化機的等級玩家需要透過完成任務和收集道具來提升孵化機的等級,孵化機的等級決定了孵化速度和孵化成功率。 3.收集孵化所需的資源玩家需要在遊戲中

Win11管理員權限取得方法總計 Win11管理員權限取得方法總計 Mar 09, 2024 am 08:45 AM

Win11管理員權限取得方法匯總在Windows11作業系統中,管理員權限是非常重要的權限之一,可以讓使用者對系統進行各種操作。有時候,我們可能需要取得管理員權限來完成一些操作,例如安裝軟體、修改系統設定等。下面就為大家總結了一些取得Win11管理員權限的方法,希望能幫助大家。 1.使用快捷鍵在Windows11系統中,可以透過快捷鍵的方式快速開啟命令提

Oracle版本查詢方法詳解 Oracle版本查詢方法詳解 Mar 07, 2024 pm 09:21 PM

Oracle版本查詢方法詳解Oracle是目前世界上最受歡迎的關聯式資料庫管理系統之一,它提供了豐富的功能和強大的效能,廣泛應用於企業。在進行資料庫管理和開發過程中,了解Oracle資料庫的版本是非常重要的。本文將詳細介紹如何查詢Oracle資料庫的版本信息,並給出具體的程式碼範例。查詢資料庫版本的SQL語句在Oracle資料庫中,可以透過執行簡單的SQL語句

PHP 與 Ajax:建立一個自動完成建議引擎 PHP 與 Ajax:建立一個自動完成建議引擎 Jun 02, 2024 pm 08:39 PM

使用PHP和Ajax建置自動完成建議引擎:伺服器端腳本:處理Ajax請求並傳回建議(autocomplete.php)。客戶端腳本:發送Ajax請求並顯示建議(autocomplete.js)。實戰案例:在HTML頁面中包含腳本並指定search-input元素識別碼。

手機字體大小設定方法(輕鬆調整手機字體大小) 手機字體大小設定方法(輕鬆調整手機字體大小) May 07, 2024 pm 03:34 PM

字體大小的設定成為了重要的個人化需求,隨著手機成為人們日常生活的重要工具。以滿足不同使用者的需求、本文將介紹如何透過簡單的操作,提升手機使用體驗,調整手機字體大小。為什麼需要調整手機字體大小-調整字體大小可以使文字更清晰易讀-適合不同年齡段用戶的閱讀需求-方便視力不佳的用戶使用手機系統自帶字體大小設置功能-如何進入系統設置界面-在在設定介面中找到並進入"顯示"選項-找到"字體大小"選項並進行調整第三方應用調整字體大小-下載並安裝支援字體大小調整的應用程式-開啟應用程式並進入相關設定介面-根據個人

See all articles