一些常用ASP ActiveX 組件使用方法的介紹
二、 Content Linking 組件
如果你的網(wǎng)站有一系列相互關(guān)聯(lián)的頁(yè)面的話, Content Linking 組件將非常適合你的需求,它非但可以使你在這些頁(yè)面中建立一個(gè)目錄表,而且還可以在它們中間建立動(dòng)態(tài)連接,并自動(dòng)生成和更新目錄表及先前和后續(xù)的 Web 頁(yè)的導(dǎo)航鏈接。這對(duì)于列出聯(lián)機(jī)報(bào)刊、電子讀物網(wǎng)站以及論壇郵件是十分理想的選擇。
Content Linking 組件創(chuàng)建管理 URL 列表的 Nextlink 對(duì)象,要使用 Content Linking 組件,必須需要先創(chuàng)建 Content Linking List 文件。 Content Linking 組件正是通過(guò)讀取這個(gè)文件來(lái)獲得處理我們希望鏈接的所有頁(yè)面的信息。事實(shí)上該文件是一個(gè)純文本文件,其內(nèi)容如下 :
page1.htm one
page2.htm two
page3.htm three
page4.htm four
page5.htm five
page6.htm six
這個(gè)文本文件的每行有如下形式 :
url description comment
其中, URL 是與頁(yè)面相關(guān)的超鏈地址, description 提供了能被超鏈?zhǔn)褂玫奈谋拘畔ⅲ?comment 則包含了不被 Content Linking 組件解釋的注釋信息,它的作用如同程序中的注釋。 description 和 comment 參數(shù)是可選的。
下面我們來(lái)看看如何具體使用 Content Linking 組件 :
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title> 網(wǎng)絡(luò)電子讀物寶藏 < /title>
</head>
<body>
<p> 網(wǎng)絡(luò)電子讀物導(dǎo)航
<%
Set Link = Server.CreateObject("MSWC.NextLink")
count = Link.GetListCount("nextlink.txt")
Dim I
For I=1 to count
%>
<ul>< li>
<a href="< %= Link.GetNthURL("nextlink.txt", I) %>">
<%= Link.GetNthDescription("nextlink.txt", I) %>
</a>
<% Next %>
</body>
</html>
在以上代碼中,我們先用 GetListCount 方法確定在文件 nextlink.txt 中有多少條項(xiàng)目,然后利用循環(huán)語(yǔ)句,并使用 GetNthURL、 GetNthDescription 方法逐一將存儲(chǔ)在 nextlink.txt 文件中的內(nèi)容讀出并顯示給客戶端瀏覽器。
下面列出了 Content Linking 組件所有可使用的方法 GetListCount(file) 統(tǒng)計(jì)內(nèi)容鏈接列表文件中鏈接的項(xiàng)目數(shù)。
GetNextURL(file) 獲取內(nèi)容鏈接列表文件中所列的下一頁(yè)的 URL。
GetPreviousDescription(file) 獲取內(nèi)容鏈接列表文件中所列的上一頁(yè)的說(shuō)明行。
GetListIndex(file) 獲取內(nèi)容鏈接列表文件中當(dāng)前頁(yè)的索引。
GetNthDescription(file,index) 獲取內(nèi)容鏈接列表文件中所列的第 N 頁(yè)的說(shuō)明。
GetPreviousUR(file) 獲取內(nèi)容鏈接列表文件中所列的上一頁(yè)的 URL。
GetNextDescription(file) 獲取內(nèi)容鏈接列表文件中所列的下一頁(yè)的說(shuō)明。
GetNthURL(file,index) 獲取內(nèi)容鏈接列表文件中所列的第 N 頁(yè)的說(shuō)明。
在我們創(chuàng)建了網(wǎng)站的總導(dǎo)航頁(yè)面后,我們當(dāng)然還希望在每一頁(yè)中添加一個(gè)“上一頁(yè)”、“下一頁(yè)”的導(dǎo)航超鏈,下面我們就來(lái)看看如何實(shí)現(xiàn)導(dǎo)航超鏈。
由于考慮到你的網(wǎng)站可能包含了上千或更多的頁(yè)面,所以我們不可能在每一個(gè)頁(yè)面中都編寫實(shí)現(xiàn)導(dǎo)航超鏈的 ASP 代碼。因此,我們必須利用前幾篇中所學(xué)到的服務(wù)器端包容 SSI,這樣就避免了大量的重復(fù)作業(yè),請(qǐng)看下例 :
<!--#include file="nextprev.inc"-->
只要將這端代碼放在每個(gè)頁(yè)面中即可。 nextprev.inc 文件的內(nèi)容如下 :
<%
Set Link = Server.CreateObject("MSWC.NextLink")
count = Link.GetListCount("nextlink.txt")
current = link.GetListIndex("nextlink.txt")
If current > 1 Then
%>
<a href="< %= Link.GetPreviousURL("nextlink.txt") %>"> 上一頁(yè) < /a>
<%
End If
If current < count Then
%>
<a href="< %= Link.GetNextURL("nextlink.txt") %>"> 下一頁(yè) < /a>
<% End If %>