欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

原生JS簡單實現(xiàn)ajax的方法示例

 更新時間:2016年11月29日 08:52:38   作者:牛逼的霍嘯林  
這篇文章主要介紹了原生JS簡單實現(xiàn)ajax的方法,結(jié)合實例形式分析了ajax的實現(xiàn)步驟與相關(guān)使用技巧,需要的朋友可以參考下

本文實例講述了原生JS簡單實現(xiàn)ajax的方法。分享給大家供大家參考,具體如下:

HTML部分:

<body>
<input type="button" value="Ajax提交" onclick="Ajax();" />
<div id="resText" ></div>
</body>

這里有個input按鈕,點(diǎn)擊會觸發(fā)click事件,click事件調(diào)用Ajax()方法。

JS部分:

<script language="javascript" type="text/javascript">
//通過這個函數(shù)來異步獲取信息
function Ajax(){ 
  var xmlHttpReq = null;  //聲明一個空對象用來裝入XMLHttpRequest
  if (window.ActiveXObject){//IE5 IE6是以ActiveXObject的方式引入XMLHttpRequest的
    xmlHttpReq = new ActiveXObject("Microsoft.XMLHTTP");
  } 
  else if (window.XMLHttpRequest){//除IE5 IE6 以外的瀏覽器XMLHttpRequest是window的子對象
    xmlHttpReq = new XMLHttpRequest();//實例化一個XMLHttpRequest
  }
  if(xmlHttpReq != null){  //如果對象實例化成功 
    xmlHttpReq.open("GET","test.php",true);  //調(diào)用open()方法并采用異步方式
    xmlHttpReq.onreadystatechange=RequestCallBack; //設(shè)置回調(diào)函數(shù)
    xmlHttpReq.send(null);  //因為使用get方式提交,所以可以使用null參調(diào)用
  }
  function RequestCallBack(){//一旦readyState值改變,將會調(diào)用這個函數(shù)
    if(xmlHttpReq.readyState == 4){
        if(xmlHttpReq.status == 200){
          //將xmlHttpReq.responseText的值賦給ID為 resText 的元素
          document.getElementById("resText").innerHTML = xmlHttpReq.responseText;
        }
    }
  }
}
</script>

Ajax大約分四步,創(chuàng)建Ajax對象,用open()方法偷偷的跑到服務(wù)器去獲取數(shù)據(jù),成功后做相應(yīng)的處理。用GET方法將要提交的參數(shù)寫到open方法的url參數(shù)中就行了,此時send方法的參數(shù)為null。

例如GET方法 :

var url = "login.php?user=XXX&pwd=XXX";
xmlHttpRequest.open("GET",url,true);
xmlHttpRequset.send(null);

例如POST方法:

xmlHttpRequest.open("POST","login.php",true);
xmlHttpRequest.setRequestHeder("Content-Type","application/x-www-form-urlencoded;charset=UTF-8");
xmlHttpRequest.send("user="+username+"&pwd="+password);

如果需要在send里傳遞參數(shù)則setRequestHeder是必須的

需要注意的是根據(jù)提交方式的不同,兩種提交方式分別調(diào)用后臺的doGet方法和doPost方法處理。

PHP部分:

<?php
  echo "Hello Ajax!";
?>

Ajax獲取了PHP的數(shù)據(jù)后,就會偷偷的將數(shù)據(jù)放到相應(yīng)的div層中。這個click事件并沒有使得頁面刷新,就偷偷的獲取了服務(wù)器端的數(shù)據(jù),服務(wù)端的數(shù)據(jù)也可以是從數(shù)據(jù)庫里讀取出來的,獲取數(shù)據(jù)后,Ajax還可以進(jìn)行一些動作的處理。

一切都在悄無聲息中。

更多關(guān)于JavaScript相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《JavaScript中ajax操作技巧總結(jié)》、《JavaScript切換特效與技巧總結(jié)》、《JavaScript查找算法技巧總結(jié)》、《JavaScript動畫特效與技巧匯總》、《JavaScript錯誤與調(diào)試技巧總結(jié)》、《JavaScript數(shù)據(jù)結(jié)構(gòu)與算法技巧總結(jié)》、《JavaScript遍歷算法與技巧總結(jié)》及《JavaScript數(shù)學(xué)運(yùn)算用法總結(jié)

希望本文所述對大家JavaScript程序設(shè)計有所幫助。

相關(guān)文章

最新評論