Ajax的使用四大詳細步驟
什麼是ajax?
ajax(異步javascript xml) 能夠刷新局部網頁數據而不是重新加載整個網頁。
如何使用ajax?
第一步,創建xmlhttprequest對象,var xmlhttp =new XMLHttpRequest();XMLHttpRequest對象用來和服務器交換數據。
var xhttp;if (ttpRequest) {//現代主流瀏覽器xhttp = new XMLHttpRequest();} else {// 針對瀏覽器,比如IE5或IE6xhttp = new ActiveXObject("TTP");}
第二步,使用xmlhttprequest對象的open()和send()方法發送資源請求給服務器。
(method,url,async) method包括get 和post,url主要是文件或資源的路徑,async參數為true(代表異步)或者false(代表同步)
();使用get方法發送請求到服務器。
(string);使用post方法發送請求到服務器。
post 發送請求什麼時候能夠使用呢?
(1)更新一個文件或者數據庫的時候。
(2)發送大量數據到服務器,因為post請求沒有字符限制。
(3)發送用户輸入的加密數據。
get例子:
("GET", "ajax_", true);("GET", "", true);("GET", "demo_" + om(), true);();
post例子
("POST", "demo_", true);();
post表單數據需要使用xmlhttprequest對象的setRequestHeader方法增加一個HTTP頭。
post表單例子
("POST", "ajax_", true);equestHeader("Content-type", "application/x-www-form-urlencoded");("fname=Henry&lname=Ford");
async=true 當服務器準備響應時將執行onreadystatechange函數。
adystatechange = function() {if (yState == 4 && us == 200) {lementById("demo")rHTML = onseText;}};("GET", "", true);();
asyn=false 則將不需要寫onreadystatechange函數,直接在send後面寫上執行代碼。
("GET", "", false);();lementById("demo")rHTML = onseText;
第三步,使用xmlhttprequest對象的`responseText或responseXML屬性獲得服務器的響應。
使用responseText屬性得到服務器響應的字符串數據,使用responseXML屬性得到服務器響應的XML數據。
例子如下:
lementById("demo")rHTML = onseText;
服務器響應的XML數據需要使用XML對象進行轉換。
例子:
xmlDoc = onseXML;txt = "";x = lementsByTagName("ARTIST");for (i = 0; i < th; i++) {txt += x[i]dNodes[0]Value + "
";}lementById("demo")rHTML = txt;
第四步,onreadystatechange函數,當發送請求到服務器,我們想要服務器響應執行一些功能就需要使用onreadystatechange函數,每次xmlhttprequest對象的readyState發生改變都會觸發onreadystatechange函數。
onreadystatechange屬性存儲一個當readyState發生改變時自動被調用的函數。
readyState屬性,XMLHttpRequest對象的狀態,改變從0到4,0代表請求未被初始化,1代表服務器連接成功,2請求被服務器接收,3處理請求,4請求完成並且響應準備。
status屬性,200表示成功響應,404表示頁面不存在。
在onreadystatechange事件中,服務器響應準備的時候發生,當readyState==4和status==200的時候服務器響應準備。
例子:
function loadDoc() {var xhttp = new XMLHttpRequest();adystatechange = function() {if (yState == 4 && us == 200) {lementById("demo")rHTML = onseText;}};("GET", "ajax_", true);();} //函數作為參數調用
Let AJAX change this text.
Change Content
function loadDoc(url, cfunc) {var xhttp;xhttp=new XMLHttpRequest();adystatechange = function() {if (yState == 4 && us == 200) {cfunc(xhttp);}};("GET", url, true);();}function myFunction(xhttp) {lementById("demo")rHTML = onseText;}
-
Dreamweaver技巧詳解
Dreamweaver由MX版本開始使用Opera軟件公司的排版引擎“Presto”作為網頁預覽。下面給大家介紹Dreamweaver技巧,一起來學習吧!Dreamweaver技巧詳解1、靈活運用樣式熟悉網頁設計的網友就知道,調用Style的方法很多,我們可以單擊鼠標右鍵選擇CustonStyle來調用Style...
-
SQl常用增刪改查模板
篇一:SQl常用增刪改查SQL常用增刪改查語句增加現在有一張表,表(Test)裏面有三個字段,分別為sno,sname,age。舉例用一條增加SQL語句,插入一條數據進庫。語句:Insertinto表名value(‘數據1’,’數據2’,’數據3’)具體操作:Insertintotestvalues('test','te...
-
WAP教程:WML 鏈接和圖像
鏈接可以製作WML卡片來顯示WML的錨功能,圖像可以製作WML卡片來顯示圖像.鏈接可以製作WML卡片來顯示WML的錨功能。標籤總是要規定一個任務("go","prev",或"refresh")。任務定義了當用户選擇此鏈接時要做的事情。在本例中,當用户選擇"Nextpage",其任務是"前往":Next...
-
HTML5教程:畫布Canvas基礎知識講解
Canvas是HTML5最讓人期待的特性之一,目前已獲得大部分Web瀏覽器支持Canvas可以幫助創建遊戲、增強圖形用户界面。下面YJBYS小編為大家帶來畫布Canvas基礎知識,希望對大家學習有所幫助!HTML5規範引進了很多新特性,其中最令人期待的之一就是Canvas元素。HTML5Canvas...