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