淺談無刷新取得遠(yuǎn)程數(shù)據(jù)技術(shù)
發(fā)表時(shí)間:2024-05-19 來源:明輝站整理相關(guān)軟件相關(guān)文章人氣:
[摘要]刷新技術(shù)經(jīng)歷了大致幾個(gè)階段:一、在HTML文件頭里增加一個(gè)鍵,使該頁面在設(shè)定的時(shí)間后跳轉(zhuǎn)到指定的頁面(包括自身);例如:<meta http-equiv="refresh" content="30">二、使用框架然后在JS腳本里定時(shí)刷新框架內(nèi)容。...
刷新技術(shù)經(jīng)歷了大致幾個(gè)階段:
一、在HTML文件頭里增加一個(gè)鍵,使該頁面在設(shè)定的時(shí)間后跳轉(zhuǎn)到指定的頁面(包括自身);
例如:
<meta http-equiv="refresh" content="30">
二、使用框架然后在JS腳本里定時(shí)刷新框架內(nèi)容。
上面兩種方式都會(huì)重新加載頁面,即刷新,給人的感覺不是很好!于是無刷新技術(shù)出現(xiàn)了。
三、是對(duì)第二種方式的一種變通。
即將眾多框架中的一個(gè)長寬設(shè)置為0,使其不可見,然后通過腳本定時(shí)刷新該隱藏框架內(nèi)容,再將該框架內(nèi)容“寫”到可瀏覽的框架里。早期的聊天室大多使用了這種技術(shù)。
真正意義上實(shí)現(xiàn)無刷新技術(shù)的還是以下兩種技術(shù),它們甚至可以實(shí)現(xiàn)局部刷新:
四、xmlHttp技術(shù),可以通過xmlHttp訪問asp頁面、aspx頁面、WebService等。
<script language="javascript">
function re()
{
var http = new ActiveXObject("Microsoft.XMLHTTP");
http.open("GET","../Advertisement/3.htm",false);
http.send();
var str = http.responseText;
t.innerHTML=str;
}
</script>
<span id=t></span>
五、WebService,使用WebService.htc組件訪問Web服務(wù)。
var OBJ;
function init(obj,op,id)
{
OBJ=obj;
OBJ.useService("admin/DataOperation.asmx?WSDL","getBody");
OBJ.getBody.callService(show,op,id);
}
function show(result){
OBJ.innerHTML=result.value;
}
六、Remoting,使用Remoting也可以實(shí)現(xiàn)無刷新技術(shù)。因?yàn)镽emoting組件可以提供包括Http在內(nèi)的多種訪問方式,當(dāng)作為Http訪問時(shí)相當(dāng)于一個(gè)WebService。