日期:2010-05-08  浏览次数:20836 次

  当前ASP技术越来越成熟,大部分开发人员在开发中只运用ASP自带的对象和数据库组件就能实现客户端和WEB服务器之间的交互。我现在介绍两个很有用的组件XMLDocument、XMLHTTP,以及他们所能实现的几种功能,相信能对ASP开发带来一些新的思路。

    任何开发都要以需求为主,我们先不介绍这两个组件怎么用,来直接看他们能做些什么?在我们
    运用他们做一些简单的功能的时候再深入的了解他们的各种使用方法。

    功能一:实现页面的局部静态刷新

    假设功能:需要在所有页面的右上角显示当前在线的人数.当前在线的人数存放在服务器的全局变量Application("online_num")中。
   
    常规方法:

    1.在右上角放置一个内帧标签(<iframe>),让他指向一个新的页面new.asp,在new.asp中读取
    Application("online_num")的值显示出来,并且每隔一定时间刷新。

    代码:
    default.asp
    <html>
    ...
    <iframe width=20 height=5 src=new.asp border=0></iframe>
    ...
    </html>
    new.asp
    <meta http-equiv="refresh" content="1100;url=new.asp">
    <%
    response.write "当前在线人数" & Application("online_num")
    %>
    缺点:由于是页面刷新,刷新的时候会在浏览器下面出现蓝色状态条。
    新的方法:
    同样也建立一个新的文件new.asp
    new.asp
    <%
    response.write application("online_num")
    %>
   
    default.asp
    <html>
    <head>
    <script language=VBScript>
    sub getonlinenum()
      dim objXMLHTTP,strReturn
      set objXMLHTTP=CreateObject("MICROSOFT.XMLHTTP")
      objXMLHTTP.open "GET","http://localhost:80/new.asp",false
      objXMLHTTP.send ""
      strReturn=objXMLHTTP.ResponseText
      online_num.innerHTML="当前在线人数" & strReturn
    setTimeout("getonlinenum()",60000)
    end sub
    </script>
    </head>
    <body onload=vbscript:getonlinenum()>
    <span id=online_num></span>
    ...
    </html>