其實最簡單的可以理解為:JavaScript + XMLHttpRequest + CSS +伺服器端的集合,其本質上是一種瀏覽器端的技術。好了,
簡單的描述了一下,現在直接上代碼吧!
(1).功能描述:
建立兩個html頁面分別為1.html和2.html,在不重新整理的情況下點擊1.html頁面上的“擷取資料”按鈕後,將2.html頁中的內容顯示在1.html頁面的<div>標記中。
(2).實現代碼:
1.html實現代碼: 複製代碼 代碼如下:<head>
<title>傳統的javascript方法實現Ajax功能</title>
<script type="text/javascript">
//聲明一個空的objXmlHttp對象
var objXmlHttp = null;
//根據瀏覽器的不同,返回改變了的實體物件
function CreateXMLHTTP() {
if (window.ActiveXObject) {
objXmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
} else {
if (window.XMLHttpRequest) {
objXmlHttp = new XMLHttpRequest();
} else {
alert("初始化XMLHTTP錯誤!");
}
}
}
function GetSendData() {
document.getElementById("divMsg").innerHTML = "正在載入中......"; //初始化內容
//設定發送地址變數並賦初始值
var strSendUrl = "2.html?date=" + Date();//為了能即時擷取2.html變了的資料,在發送
//URL時設定參數,功能是清空緩衝中已載入的變數資訊,重新擷取新的即時資料
//執行個體化XMLHttpRequest對象
CreateXMLHTTP();
//open方法初始化XMLHttpRequest
objXmlHttp.open("GET", strSendUrl, true);
//設定非同步請求的事件處理常式
objXmlHttp.onreadystatechange = function () { //回調事件函數
if (objXmlHttp.readyState == 4) { //如果請求完成載入
if (objXmlHttp.status == 200) { //如果響應已成功
//擷取資料
document.getElementById("divMsg").innerHTML = objXmlHttp.responseText;
}
}
}
objXmlHttp.send(null);
}
</script>
</head>
<body>
<input type="button" id="btn" value="擷取資料" onclick="GetSendData()" />
<div id="divMsg">
</div>
</body>
</html>
2.html實現的代碼: 複製代碼 代碼如下:<head>
<title></title>
</head>
<body>
姓名:小菜<br />
性別:男<br />
郵箱:cj1161059871@163.com
</body>
</html>
呵呵、、、這部分就這麼多了,簡單吧!唉,原來神奇的Ajax也是簡單的(想想一開始的人機互動就發抖),趕快試試吧!童鞋......