菜鳥蔡之Ajax復(fù)習(xí)第一篇(后臺asp.net)(傳統(tǒng)的JavaScript方法實現(xiàn)Ajax功能)
更新時間:2012年11月06日 09:20:45 作者:
Ajax是Asynchronous JavaScript and XML,其核心是通過XMLHttpRequest對象以一種異步的方式向服務(wù)器發(fā)送請求,并通過該對象接收請求返回的數(shù)據(jù),從而完成人機(jī)交互的數(shù)據(jù)操作(呵呵、、、說的有點(diǎn)嚇人!)
其實最簡單的可以理解為:JavaScript + XMLHttpRequest + CSS +服務(wù)器端的集合,其本質(zhì)上是一種瀏覽器端的技術(shù)。好了,
簡單的描述了一下,現(xiàn)在直接上代碼吧!
(1).功能描述:
新建兩個html頁面分別為1.html和2.html,在不刷新的情況下點(diǎn)擊1.html頁面上的“獲取數(shù)據(jù)”按鈕后,將2.html頁中的內(nèi)容顯示在1.html頁面的<div>標(biāo)記中。
(2).實現(xiàn)代碼:
1.html實現(xiàn)代碼:
<head>
<title>傳統(tǒng)的javascript方法實現(xiàn)Ajax功能</title>
<script type="text/javascript">
//聲明一個空的objXmlHttp對象
var objXmlHttp = null;
//根據(jù)瀏覽器的不同,返回改變了的實體對象
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 = "正在加載中......"; //初始化內(nèi)容
//設(shè)置發(fā)送地址變量并賦初始值
var strSendUrl = "2.html?date=" + Date();//為了能即時獲取2.html變了的數(shù)據(jù),在發(fā)送
//URL時設(shè)置參數(shù),功能是清空緩存中已加載的變量信息,重新獲取新的即時數(shù)據(jù)
//實例化XMLHttpRequest對象
CreateXMLHTTP();
//open方法初始化XMLHttpRequest
objXmlHttp.open("GET", strSendUrl, true);
//設(shè)置異步請求的事件處理程序
objXmlHttp.onreadystatechange = function () { //回調(diào)事件函數(shù)
if (objXmlHttp.readyState == 4) { //如果請求完成加載
if (objXmlHttp.status == 200) { //如果響應(yīng)已成功
//獲取數(shù)據(jù)
document.getElementById("divMsg").innerHTML = objXmlHttp.responseText;
}
}
}
objXmlHttp.send(null);
}
</script>
</head>
<body>
<input type="button" id="btn" value="獲取數(shù)據(jù)" onclick="GetSendData()" />
<div id="divMsg">
</div>
</body>
</html>
2.html實現(xiàn)的代碼:
<head>
<title></title>
</head>
<body>
姓名:小菜<br />
性別:男<br />
郵箱:cj1161059871@163.com
</body>
</html>
呵呵、、、這部分就這么多了,簡單吧!唉,原來神奇的Ajax也是簡單的(想想一開始的人機(jī)交互就發(fā)抖),趕快試試吧!童鞋......
簡單的描述了一下,現(xiàn)在直接上代碼吧!
(1).功能描述:
新建兩個html頁面分別為1.html和2.html,在不刷新的情況下點(diǎn)擊1.html頁面上的“獲取數(shù)據(jù)”按鈕后,將2.html頁中的內(nèi)容顯示在1.html頁面的<div>標(biāo)記中。
(2).實現(xiàn)代碼:
1.html實現(xiàn)代碼:
復(fù)制代碼 代碼如下:
<head>
<title>傳統(tǒng)的javascript方法實現(xiàn)Ajax功能</title>
<script type="text/javascript">
//聲明一個空的objXmlHttp對象
var objXmlHttp = null;
//根據(jù)瀏覽器的不同,返回改變了的實體對象
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 = "正在加載中......"; //初始化內(nèi)容
//設(shè)置發(fā)送地址變量并賦初始值
var strSendUrl = "2.html?date=" + Date();//為了能即時獲取2.html變了的數(shù)據(jù),在發(fā)送
//URL時設(shè)置參數(shù),功能是清空緩存中已加載的變量信息,重新獲取新的即時數(shù)據(jù)
//實例化XMLHttpRequest對象
CreateXMLHTTP();
//open方法初始化XMLHttpRequest
objXmlHttp.open("GET", strSendUrl, true);
//設(shè)置異步請求的事件處理程序
objXmlHttp.onreadystatechange = function () { //回調(diào)事件函數(shù)
if (objXmlHttp.readyState == 4) { //如果請求完成加載
if (objXmlHttp.status == 200) { //如果響應(yīng)已成功
//獲取數(shù)據(jù)
document.getElementById("divMsg").innerHTML = objXmlHttp.responseText;
}
}
}
objXmlHttp.send(null);
}
</script>
</head>
<body>
<input type="button" id="btn" value="獲取數(shù)據(jù)" onclick="GetSendData()" />
<div id="divMsg">
</div>
</body>
</html>
2.html實現(xiàn)的代碼:
復(fù)制代碼 代碼如下:
<head>
<title></title>
</head>
<body>
姓名:小菜<br />
性別:男<br />
郵箱:cj1161059871@163.com
</body>
</html>
呵呵、、、這部分就這么多了,簡單吧!唉,原來神奇的Ajax也是簡單的(想想一開始的人機(jī)交互就發(fā)抖),趕快試試吧!童鞋......
相關(guān)文章
解析ajax核心XMLHTTPRequest對象的創(chuàng)建與瀏覽器的兼容問題
這篇文章主要介紹了ajax核心XMLHTTPRequest對象的創(chuàng)建與瀏覽器的兼容問題。需要的朋友可以過來參考下,希望對大家有所幫助2013-12-12使用ajax加載的頁面中包含的javascript的解決方法
使用ajax加載的頁面中包含的javascript的兩個解決方法, 需要的朋友可以參考下。2010-09-09AJAX開發(fā)技術(shù)在PHP開發(fā)中的簡單應(yīng)用技巧
AJAX無疑是2005年炒的最熱的Web開發(fā)技術(shù)之一,當(dāng)然,這個功勞離不開Google。我只是一個普通開發(fā)者,使用AJAX的地方不是特別多,我就簡單的把我使用的心得說一下。(本文假設(shè)用戶已經(jīng)具有JavaScript、HTML、CSS等基本的Web開發(fā)能力)2010-04-04ajax交互Struts2的action(客戶端/服務(wù)器端)
本文為大家探討下ajax交互Struts2的action并有客戶端及服務(wù)器端代碼,感興趣的朋友可以參考下,希望對大家有所幫助2013-08-08用AJAX技術(shù)實現(xiàn)在自己Blog上聚合并顯示朋友Blog的最新文章
在自己Blog上聚合并顯示朋友Blog的最新文章,這樣方便自己及時了解朋友的消息,另外,也方便訪問者找到和本Blog相關(guān)的blog和文章2014-05-05