2004-11-02, 02:34 PM | #1 |
注册日期: 2003-10-22
帖子: 11,053
积分:6
精华:24
现金:14348金币
资产:29325305金币
|
浅谈无刷新取得远程数据技术
刷新技术经历了大致几个阶段: 一、在HTML文件头里增加一个键,使该页面在设定的时间后跳转到指定的页面(包括自身); 例如: <meta http-equiv="refresh" content="30"> 二、使用框架然后在JS脚本里定时刷新框架内容。 上面两种方式都会重新加载页面,即刷新,给人的感觉不是很好!于是无刷新技术出现了。 三、是对第二种方式的一种变通。 即将众多框架中的一个长宽设置为0,使其不可见,然后通过脚本定时刷新该隐藏框架内容,再将该框架内容“写”到可浏览的框架里。早期的聊天室大多使用了这种技术。 真正意义上实现无刷新技术的还是以下两种技术,它们甚至可以实现局部刷新: 四、xmlHttp技术,可以通过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服务。 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也可以实现无刷新技术。因为Remoting组件可以提供包括Http在内的多种访问方式,当作为Http访问时相当于一个WebService。 |
|