Asp 解析 XML並分頁顯示,示例源碼如下:
復制代碼 代碼如下:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<link href="http://www.fx678.com/css/cur_topics.css" rel="stylesheet" type="text/css" />
<script language="javascript" type="text/ecmascript" src="http://www.fx678.com/js/jquery-1.8.0.min.js"></script>
<title>財富動力專題</title>
<style type="text/css">
#right_topic
{
float: right;
height: auto;
width: 690px;
}
#right_topic .xinhua
{
clear: both;
width: 690px;
overflow: hidden;
font-size: 14px;
color: #444;
line-height: 24px;
}
#right_topic .xinhua img
{
border: 0;
}
#right_topic .xinhua .top_cont
{
border: 1px solid #ddd;
height: 140px;
}
#right_topic .xinhua .top_cont .xh_logo
{
width: 270px;
float: left;
margin: 25px 10px;
}
#right_topic .xinhua .top_cont .xh_text
{
float: right;
width: 390px;
font-size: 14px;
line-height: 22px;
color: #666;
margin-top: 15px;
}
.list
{
clear: both;
margin-top: 15px;
overflow: hidden;
border-bottom: 3px solid #206295;
}
.list ul
{
margin: 0;
padding: 0;
}
.list ul li
{
list-style: none;
border-bottom: 1px dotted #E5E5E5;
padding: 10px;
}
.list ul li h4
{
font-family: "Microsoft Yahei";
font-size: 18px;
font-weight: normal;
line-height: 22px;
margin: 0px;
margin-bottom: 5px;
padding: 0;
color: #0761B7;
}
.list ul li h4 a
{
color: #206295;
text-decoration: none;
}
.list ul li h4 a:hover
{
text-decoration: underline;
}
.list ul li span
{
float: right;
width: 120px;
color: #999;
font-size: 14px;
text-align: right;
}
.list ul li p
{
margin: 0;
padding: 0;
font-size: 12px;
}
.list ul li.bg
{
background: #f5f8fa;
}
#pageZone
{
background: #F5F6FB;
border-bottom: 1px solid #DBE3EE;
margin: 10px auto 20px;
padding: 10px 0;
text-align: center;
}
#pageZone span
{
background: #FFFFFF;
border: 1px solid #D8DADF;
font-size: 14px;
height: 34px;
line-height: 34px;
margin: 0px 2px;
padding: 8px 12px;
}
#pageZone span a
{
color: #666;
text-decoration: none;
}
#pageZone span.isNow
{
background: #206295;
border: 1px solid #D8DADF;
color: #FFFFFF;
}
</style>
<script type="text/javascript">
var $m = $(window.parent.document).find("#MyXH08");
$m.load(function () {
var thish = $(document).height() + 30;
$m.height(thish);
});
</script>
</head>
<body style="width: 690px;">
<!-- 列表信息 -->
<div class="list">
<ul>
<%
Dim xmlDoc,objNodes,pIndex,pSize,i,http,xmlUrl
pSize = 10 '頁大小
xmlUrl ="http://back.moneypower.cn/news.xml"
REM 頁索引
pIndex = Request.QueryString("p")
if Cint(pIndex) > 6 Or Cint(pIndex) < 1 then
pIndex = 1
end if
REM 異步讀取XML源
Set http = Server.CreateObject("Microsoft.XMLHTTP")
http.open "GET",xmlUrl,false
http.send
REM 定義 讀取XML 的變量
Set xmlDoc = Server.CreateObject("Microsoft.XMLDOM")
xmlDoc.async = false
xmlDoc.validateOnParse = false
xmlDoc.load(http.ResponseXML)
Set objNodes = xmlDoc.getElementsByTagName("item")
if objNodes.length > 0 then
i = 0
For j = (pSize*(pIndex-1)) to (pSize*pIndex-1) step 1
myTitle = objNodes(j).childNodes(0).text
myDate = objNodes(j).childNodes(3).text
myDescription = objNodes(j).childNodes(2).text
link = Server.URLEncode(objNodes(j).childNodes(1).text)
myLink = "http://www.fx678.com/news/currency/XH08NewsContent.asp?u=" & link
%>
<% if i Mod 2 = 0 then %>
<li class="bg">
<% else %>
<li>
<% end if %>
<h4>
<span>
<%= FormatDate(myDate,2) %>
</span><a target="_blank" href="<%= myLink %>">
<%= myTitle %></a></h4>
<p>
<%= myDescription %>
</p>
</li>
<%
i = i + 1
Next
Else
Response.Write("暫無數據!")
End If
%>
</ul>
</div>
<!-- 分頁信息 -->
<div id="pageZone">
<%
if pIndex = 1 then
%>
<span class="Disabled">第一頁</span>
<span class="Disabled"><<上一頁</span>
<span class="isNow number" title="您正在浏覽本頁">1</span>
<span class="number" title="第2頁">
<a href="zt_CFDL_List.asp?p=2">2</a>
</span>
<span class="number" title="第3頁">
<a href="zt_CFDL_List.asp?p=3">3</a>
</span>
<span class="number" title="第4頁">
<a href="zt_CFDL_List.asp?p=4">4</a>
</span>
<span class="number" title="第5頁">
<a href="zt_CFDL_List.asp?p=5">5</a>
</span>
<span class="number" title="第6頁">
<a href="zt_CFDL_List.asp?p=6">6</a>
</span>
<span title="轉到下一頁">
<a href="zt_CFDL_List.asp?p=<%= Cint(pIndex+1) %>">下一頁>></a>
</span>
<span title="轉到最後一頁">
<a href="zt_CFDL_List.asp?p=6">最後一頁</a>
</span>
<%
elseif pIndex = 6 then
%>
<span class="Disabled">
<a href="zt_CFDL_List.asp?p=1">第一頁</a>
</span>
<span title="轉到上一頁">
<a href="zt_CFDL_List.asp?p=<%= Cint(pIndex-1) %>">上一頁</a>
</span>
<span class="number" title="第1頁">
<a href="zt_CFDL_List.asp?p=1">1</a>
</span>
<span class="number" title="第2頁">
<a href="zt_CFDL_List.asp?p=2">2</a>
</span>
<span class="number" title="第3頁">
<a href="zt_CFDL_List.asp?p=3">3</a>
</span>
<span class="number" title="第4頁">
<a href="zt_CFDL_List.asp?p=4">4</a>
</span>
<span class="number" title="第5頁">
<a href="zt_CFDL_List.asp?p=5">5</a>
</span>
<span class="number isNow" title="您正在浏覽本頁">6</span>
<span class="Disabled">下一頁>></span>
<span class="Disabled" title="轉到最後一頁">最後一頁</span>
<%
else
%>
<span class="number">
<a href="zt_CFDL_List.asp?p=1">第一頁</a>
</span>
<span title="轉到上一頁">
<a href="zt_CFDL_List.asp?p=<%= Cint(pIndex-1) %>">上一頁</a>
</span>
<%
for m = 1 to 6 step 1
if Cint(pIndex) = Cint(m) then
%>
<span class="number isNow" title="您正在浏覽本頁"><%= m %></span>
<%
else
%>
<span class="number" title="第<%= m %>頁">
<a href="zt_CFDL_List.asp?p=<%= m %>"><%= m %></a>
</span>
<%
end if
next
%>
<span title="轉到下一頁">
<a href="zt_CFDL_List.asp?p=<%= Cint(pIndex+1) %>">下一頁>></a>
</span>
<span title="轉到最後一頁">
<a href="zt_CFDL_List.asp?p=6">最後一頁</a>
</span>
<%
end if
%>
</div>
</body>
</html>
<%
Public Function FormatDate(DateAndTime, para)
On Error Resume Next
Dim y, m, d, h, mi, s, strDateTime
FormatDate = DateAndTime
If Not IsNumeric(para) Then Exit Function
If Not IsDate(DateAndTime) Then Exit Function
y = CStr(Year(DateAndTime))
m = CStr(Month(DateAndTime))
If Len(m) = 1 Then m = "0" & m
d = CStr(Day(DateAndTime))
If Len(d) = 1 Then d = "0" & d
h = CStr(Hour(DateAndTime))
If Len(h) = 1 Then h = "0" & h
mi = CStr(Minute(DateAndTime))
If Len(mi) = 1 Then mi = "0" & mi
s = CStr(Second(DateAndTime))
If Len(s) = 1 Then s = "0" & s
Select Case para
Case "1"
strDateTime = y & "-" & m & "-" & d & " " & h & ":" & mi & ":" & s
Case "2"
strDateTime = y & "-" & m & "-" & d
Case "3"
strDateTime = y & "/" & m & "/" & d
Case "4"
strDateTime = y & "年" & m & "月" & d & "日"
Case "5"
strDateTime = m & "-" & d
Case "6"
strDateTime = m & "/" & d
Case "7"
strDateTime = m & "月" & d & "日"
Case "8"
strDateTime = y & "年" & m & "月"
Case "9"
strDateTime = y & "-" & m
Case "10"
strDateTime = y & "/" & m
Case "11"
strDateTime = m & "-" & d & " " & h & ":" & mi
Case "12"
strDateTime = h & ":" & mi & ":" & s
Case "13"
strDateTime = y & m & d & h & mi & s
Case "14"
strDateTime = y & m & d
Case "15"
strDateTime = h & mi & s
Case "16"
strDateTime = h & ":" & mi
Case "17"
strDateTime = y & m & d & h & mi & s
Case "18"
strDateTime = y & m & d
Case "19"
strDateTime = y & m
Case Else
strDateTime = DateAndTime
End Select
FormatDate = strDateTime
End Function
%>
效果圖(部分):