ASP 3.0高级编程(二十四)

2016-01-29 19:15 5 1 收藏

ASP 3.0高级编程(二十四),ASP 3.0高级编程(二十四)

【 tulaoshi.com - ASP 】

  (1)    创建一个内容页面
我们已经使用Content Linking组件为本章提供的示例创建了菜单页面。Chapter06文件夹中的页面Default.htm采用上述代码创建菜单,如图6-2所示:

图6-2  使用Content Linking组件创建的菜单页面
       可以看到内容链接列表文件的内容显示在链接的下面,我们使用FileSystemObject对象完成这一工作。
       <%
       'create an instance of a FileSystemObject object
       Set objFSO = Server.CreateObject("Scripting.FileSystemObject")

       'open the text file as a TextStream object
       Set objTStream = objFSO.OpenTextFile(Server.MapPath("contlink.txt"), ForReading)
       Response.Write objTStream.ReadAll                          'read the whole file and put into page
       ObjTStream.Close
       %
       如果你编辑了contlink.txt文件,下次再次调用这个页面时,会看到菜单的条目发生了变化。注意文件中的最后三个条目,这三个条目使用前面介绍的redirect.asp技术,把绝对(而不是相对)的URL插入到列表中。
(2)    浏览这些页面
创建一个Content Linking组件实例并且使用它的一个方法时,将把当前页面的URL与指定的内容链接列表文件中的条目相匹配。不仅能用该组件创建一个内容列表(就像刚看到的那样),而且当在浏览器上打开其中一个页面时,可以用该组件对列表中的各个页面进行导航。
这意味着可以用超链接或按钮从这些页面中的一个移到另一个。例如,可以给页面添加Next和Back按钮,通过使用GetNextURL和GetPreviousURL方法能知道列表中的哪一个页面是前一个,哪一个页面是下一个。另一方面,能用GetNthURL方法跳到列表中的任何页面,用GetListIndex方法能知道当前页面在列表中的位置。
下面是一段给页面添加Next和Back按钮的代码,我们要做的只是把这段程序放在内容链接文件所列出的每一页中,或者用SSI的#include指令将它插入其中。
<!-- need a form to force Navigator to display the buttons --
<FORM ACTION=""
<%
'we'll insert this into each page using an SSI #include statement
'create an instance of the Content Linking component
Set objNextLink = Server.CreateObject("MSWC.NextLink")
'set the content linking list file path and name
strListFile = "contlink.txt"
'get the index of the current page in the list
intThisPage = objNextLink.GetListIndex(strListFile)
If intThisPage 1 Then  'can go back
%
  <INPUT TYPE=BUTTON VALUE="< Back"
     ONCLICK="location.href='<% = objNextLink.GetPreviousURL(strListFile) %';"
     TITLE="Go to '<% = objNextLink.GetPreviousDescription(strListFile) %'"
  &nbsp;
<%
End If
%
<INPUT TYPE=BUTTON VALUE=" Menu " ONCLICK="location.href='Default.asp';"
       TITLE="Return to the main 'Installable Components' menu"
<%
If intThisPage < objNextLink.GetListCount(strListFile) Then  'can go forward
%
  &nbsp;
  <INPUT TYPE=BUTTON VALUE="Next "
         ONCLICK="location.href='<%= objNextLink.GetNextURL(strListFile) %';"
         TITLE="Go to '<% = objNextLink.GetNextDescription(strListFile) %'"
<%
End If
%
</FORM
第一步是创建Content Linking组件,然后把列表文件名存入一个变量中,以便后面在创建页面里的客户端JScript代码时能够使用这个列表文件。另外这样做也便于页面的维护,因为如果想使用一个不同文件名仅需在一

来源:https://www.tulaoshi.com/n/20160129/1508869.html

延伸阅读
标签: ASP
  第6章          活动服务器组件 在前几章中,我们已经研究了两类不同的对象:一类是ASP对象模型的内置部分,另一类是脚本运行期库提供的对象。本章将介绍第三类能用于ASP的对象,取名为活动服务器组件(或者就称为服务器组件)。 这些组件在很多场合下就如同在浏览器或在像Visual Ba...
标签: ASP
  6.2.10  Tools组件        Tools组件提供了一些有用的方法,可在页面中检查文件是否存在、处理一个HTML窗体、以及产生一个随机整数,还有用于Macintosh计算机的一些方法,还可以检查是否存在某个服务器插件以及检查用户是否是网站的拥有者。 1.  Tools组件的成页 Tools组件提...
标签: ASP
  6.2.11  Logging Utility组件        Logging Utility组件是ASP 3.0的新组件,提供了访问日志文件的方法,这个日志文件是由服务器支持的用于Web和FTP网站的IIS创建的。 1.  Logging Utility组件的成员 Logging Utility组件提供了六种方法,能读取日志文件的内容、把新记录写进...
标签: ASP
  1.    操作HTTP报头 我们已经在几处见到ASP如何创建或修改在响应页面请示时被发送到客户的HTTP报头。在Response对象中有几个属性和方法可帮助我们做到一点。下面是一些报头方法: · 控制缓存和有效期。 · 创建状态和定制的HTTP报头。 · 指定MIME类型或内容类型。 · 添加PICS标签。 接下来将简要地研究每一个方...
标签: ASP
  第3章 ASP应用程序与会话 在前面的章节中介绍了ASP提供的访问一个客户请求和产生响应的方法,本章将讨论ASP的另两个对象。就是Application和 Session对象。这两个对象不是直接地与请求和响应的管理有关,而是更多地与ASP网页运行环境的管理相关。 与建立Web站点或Web应用程序有关的共同问题之一,是使用HTTP协议时没有状态。...

经验教程

500

收藏

96
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部