XMLHTTP異步獲取返回值的代碼超時(shí)測(cè)試(AJAX)_AJAX教程
推薦:理解才能創(chuàng)新 輕松打造自己的AJAX框架本文實(shí)現(xiàn)的只是一個(gè)最基本的AJAX框架,雖然AJAX并不是什么新技術(shù),但是做為一個(gè)框架并不是一篇文章就能說(shuō)明白的。寫(xiě)這篇文章的目的:希望能幫助初學(xué)者更好的學(xué)習(xí)、運(yùn)用AJAX框架。 我始終相信只有你真正理解了一種技術(shù),了解了技術(shù)本身,你才能更好、更靈活的使
客戶(hù)端文件,請(qǐng)修改文件名為:test_2.htm
<body>
xmlhttp異步的例子:
URL: <input name=a type=textbox value="test_s.asp" style="width:600px" >
<input onclick= "getXML()" type= "button" value= "得到源代碼">
<input name=geti type=textbox value="10000">
<input onclick= "if(xh && xh.responseText) {alert(xh.responseText);oDiv.innerHTML=xh.responseText} " type= "button" value= "顯示源代碼 " >
<div id=m style="display:none"></div>
<script language=javascript>
var oDiv
var xh
function getXML()
{
oDiv = document.all.m;
oDiv.innerHTML = "正在裝載欄目數(shù)據(jù),請(qǐng)稍侯....... ";
oDiv.style.display = "";
xh = new ActiveXObject("Microsoft.XMLHTTP")
xh.onreadystatechange = getReady;
xh.open("POST",a.value + "?geti=" + geti.value,true);
//alert("geti=" + geti.value);
xh.send();
}
function getReady()
{
if(xh.readyState==4)
{
if(xh.status==200)
{
oDiv.innerHTML = xh.responseText;
oDiv.innerHTML = oDiv.innerHTML + "load over"
}
else
{
oDiv.innerHTML = "抱歉,裝載數(shù)據(jù)失敗。原因: " + xh.statusText
// 我測(cè)試了,一旦運(yùn)行時(shí)間過(guò)長(zhǎng)會(huì)出現(xiàn):抱歉,裝載數(shù)據(jù)失敗。原因: Internal Server Error
// 但是這個(gè)時(shí)間是多少呢?在哪里設(shè)定呢?
}
}
else
{
oDiv.innerHTML = "已經(jīng)有數(shù)據(jù)了,不過(guò)readyState檢測(cè)未通過(guò)<br>";
switch (xh.readyState){
case 0:
oDiv.innerHTML = oDiv.innerHTML + "0 (未初始化) 對(duì)象已建立,但是尚未初始化(尚未調(diào)用open方法)";
break;
case 1:
oDiv.innerHTML = oDiv.innerHTML + "1 (初始化) 對(duì)象已建立,尚未調(diào)用send方法"
break;
case 2:
oDiv.innerHTML = oDiv.innerHTML + "2 (發(fā)送數(shù)據(jù)) send方法已調(diào)用,但是當(dāng)前的狀態(tài)及http頭未知"
break;
case 3:
oDiv.innerHTML = oDiv.innerHTML + "3 (數(shù)據(jù)傳送中) 已接收部分?jǐn)?shù)據(jù),因?yàn)轫憫?yīng)及http頭不全,這時(shí)通過(guò)responseBody和responseText獲取部分?jǐn)?shù)據(jù)會(huì)出現(xiàn)錯(cuò)誤, "
break;
case 4:
oDiv.innerHTML = oDiv.innerHTML + "4 (完成) 數(shù)據(jù)接收完畢,此時(shí)可以通過(guò)通過(guò)responseBody和responseText獲取完整的回應(yīng)數(shù)據(jù)"
break;
default:
oDiv.innerHTML = oDiv.innerHTML + xh.readyState + "未知狀態(tài)"
break;
}
oDiv.innerHTML = oDiv.innerHTML + "。請(qǐng)等待"
}
}
</script>
</body></html>
服務(wù)器端文件,請(qǐng)修改文件名為:test_s.asp
dim i
dim r
dim t
dim lngGetI
lngGetI=request.querystring("geti")
on error resume next
lngGetI=clng(lngGetI)
if err<>0 then
response.write "GetError: not isnumber()"
response.end()
end if
if lngGetI<0 or lngGetI>500000 then
lngGetI=10000
end if
response.write "Run Repeat At:" & lngGetI & "<br>"
t=timer
for i=1 to lngGetI
r = r & i
if i mod 20 = 0 then
r= r & "a<br>"
end if
next
response.write "run timer:" & cdbl(timer()-t) & "<br>"
response.write r
%>
分享:站長(zhǎng)推薦:Ajax技術(shù)概述與現(xiàn)狀應(yīng)用AJAX全稱(chēng)為“Asynchronous JavaScript and XML”(異步JavaScript和XML),是指一種創(chuàng)建交互式網(wǎng)頁(yè)應(yīng)用的網(wǎng)頁(yè)開(kāi)發(fā)技術(shù)。 Ajax技術(shù)是目前在瀏覽器中通過(guò)JavaScript腳本可以使用的所有技術(shù)的集合。Ajax并沒(méi)有創(chuàng)造出某種具體的新技術(shù),它所使用的所有技術(shù)都是在
- Ajax中瀏覽器的緩存問(wèn)題解決方法
- AJAX和WebService實(shí)現(xiàn)省市縣三級(jí)聯(lián)動(dòng)具體代碼
- ajax 登錄功能簡(jiǎn)單實(shí)現(xiàn)(未連接數(shù)據(jù)庫(kù))
- AJAX和WebService實(shí)現(xiàn)郵箱驗(yàn)證(無(wú)刷新驗(yàn)證郵件地址是否合法)
- AJAX和三層架構(gòu)實(shí)現(xiàn)分頁(yè)功能具體思路及代碼
- 使用AJAX返回WebService里的集合具體實(shí)現(xiàn)
- AJAX獲取服務(wù)器當(dāng)前時(shí)間及時(shí)間格式輸出處理
- ajax傳遞多個(gè)參數(shù)具體實(shí)現(xiàn)
- ajax傳遞一個(gè)參數(shù)具體實(shí)現(xiàn)
- 滑輪滾動(dòng)到頁(yè)面底部ajax加載數(shù)據(jù)配合jsonp實(shí)現(xiàn)探討
- jQery ajax——load()方法示例介紹
- jQuery+Ajax實(shí)現(xiàn)表格數(shù)據(jù)不同列標(biāo)題排序(為表格注入活力)
AJAX教程Rss訂閱編程教程搜索
AJAX教程推薦
- 實(shí)現(xiàn)基于Ajax的無(wú)限級(jí)菜單
- 使用AJAX技術(shù)打造博客無(wú)刷新搜索引擎
- Ajax程序中,自己實(shí)現(xiàn)頁(yè)面前進(jìn)、后退、與標(biāo)簽功能(asp.net2.0)
- jQuery Ajax使用心得詳細(xì)整理及注意事項(xiàng)
- Ajax 中的高級(jí)請(qǐng)求和響應(yīng)
- Ajax開(kāi)發(fā)過(guò)程中提交獲取數(shù)據(jù)的亂碼問(wèn)題
- 如何根據(jù)郵編自動(dòng)完成地址信息
- 如何深入理解JavaScript中的函數(shù)
- xmlHttpRequest實(shí)踐之無(wú)刷新驗(yàn)證用戶(hù)名
- 用AJAX編寫(xiě)用戶(hù)注冊(cè)實(shí)例及技術(shù)小結(jié)
猜你也喜歡看這些
- Ajax請(qǐng)求中的異步與同步,需要注意的地方說(shuō)明
- 利用iframe實(shí)現(xiàn)ajax跨域通信的實(shí)現(xiàn)原理(圖解)
- 如何克服對(duì)Ajax應(yīng)用的阻礙
- 用AJAX解決一些常見(jiàn)問(wèn)題
- 使用AJAX技術(shù)實(shí)現(xiàn)網(wǎng)頁(yè)無(wú)閃自動(dòng)局部刷新
- 揭秘Ajax 的安全-不容忽視的問(wèn)題
- ajax的json傳值方式在jsp頁(yè)面中的應(yīng)用
- 70個(gè)AJAX應(yīng)用的演示 附源碼下載
- 談更正用AJAX實(shí)現(xiàn)IE TREE無(wú)刷新取值的方法
- 詳解-CSS技巧篇
- 相關(guān)鏈接:
- 教程說(shuō)明:
AJAX教程-XMLHTTP異步獲取返回值的代碼超時(shí)測(cè)試(AJAX)
。