zoukankan
html css js c++ java
MSN 历史纪录分页显示(XML + XSL + Javascript)
MSN自带的XSL无分业功能,写一个简单的分页XSL:
将此文件替换MSN原有的XSL文件:MessageLog.xsl 即可
<?
xml version="1.0"
?>
<
xsl:stylesheet
xmlns:xsl
="http://www.w3.org/1999/XSL/Transform"
version
="1.0"
>
<
xsl:variable
name
="PageCount"
>
10
</
xsl:variable
>
<
xsl:template
match
="/"
>
<
html
>
<
head
>
<
title
>
Msn Chat History
</
title
>
<
style
type
="text/css"
>
body,td
{
font-size:14px;
}
.FirstCSS
{
color:#003366;
background-color:#FFFFFF;
}
.PagesCss
{
color:#003366;
font-size:13px;
}
</
style
>
<
script
langauge
="javascript"
>
<
xsl:comment
>
<![CDATA[
var CurrentPage = 1;
var PageCount = 10;
function InitMessage()
{
LblMessage.innerHTML = "[Totle: "+ GetTotlePage() +" ,Current:"+ CurrentPage +"]";
}
function GetTotlePage()
{
var XMLObj = document.XMLDocument;
var totlePage = XMLObj.documentElement.selectNodes("//Message");
if( parseInt(totlePage.length/10)*10 == totlePage.length )
totlePage = parseInt(totlePage.length/PageCount);
else
totlePage = parseInt(totlePage.length/PageCount) + 1;
return totlePage;
}
function PageChange( expr )
{
switch( expr )
{
case "F":
CurrentPage = 1;
break;
case "P":
if(CurrentPage>1)
CurrentPage -= 1;
break;
case "N":
if(CurrentPage<GetTotlePage())
CurrentPage += 1;
break;
case "L":
CurrentPage = GetTotlePage();
break;
}
var XSLObj = document.XSLDocument;
var XMLObj = document.XMLDocument;
var expr = "Message[position() < "+ CurrentPage*PageCount +" and position() > "+ (CurrentPage-1)*PageCount +"]";
document.XSLDocument.selectSingleNode("//xsl:for-each/@select").value = expr;
ConXML.innerHTML = XMLObj.documentElement.transformNode(XSLObj);
LblMessage.innerHTML = "[Totle: "+ GetTotlePage() +" ,Current:"+ CurrentPage +"]";
}
]]>
</
xsl:comment
>
</
script
>
</
head
>
<
body
class
="document_body"
onload
="InitMessage()"
>
<
h1
>
<
xsl:value-of
select
="Log/Message/From/User/@FriendlyName"
/>
Chat With
<
xsl:value-of
select
="Log/Message/To/User/@FriendlyName"
/>
</
h1
>
<
div
id
="ConXML"
>
<
xsl:apply-templates
select
="Log"
></
xsl:apply-templates
>
</
div
>
</
body
>
</
html
>
</
xsl:template
>
<
xsl:template
match
="Log"
>
<
table
width
="100%"
cellspacing
="1"
cellpadding
="1"
border
="0"
bgcolor
="#6699AA"
>
<
tr
bgcolor
="#DDDDDD"
>
<
td
>
SessionID
</
td
>
<
td
>
From
</
td
>
<
td
>
To
</
td
>
<
td
>
Time
</
td
>
<
td
>
Text
</
td
>
</
tr
>
<
xsl:for-each
select
="Message[position() < $PageCount]"
>
<
xsl:sort
order
="ascending"
select
="@SessionID"
data-type
="number"
></
xsl:sort
>
<
tr
class
="FirstCSS"
>
<
td
>
<
xsl:value-of
select
="@SessionID"
/>
</
td
>
<
td
>
<
xsl:value-of
select
="From/User/@FriendlyName"
/>
</
td
>
<
td
>
<
xsl:value-of
select
="To/User/@FriendlyName"
/>
</
td
>
<
td
>
<
xsl:value-of
select
="@Time"
/>
</
td
>
<
td
>
<
xsl:value-of
select
="string(Text)"
/>
</
td
>
</
tr
>
</
xsl:for-each
>
<
tr
bgcolor
="#DDDDDD"
>
<
td
colspan
="5"
align
="right"
>
<
span
class
="PagesCss"
>
<
span
id
="LblMessage"
></
span
>
[
<
span
onclick
="PageChange('F')"
style
="cursor:hand"
>
First
</
span
>
]
[
<
span
onclick
="PageChange('P')"
style
="cursor:hand"
>
Previous
</
span
>
]
[
<
span
onclick
="PageChange('N')"
style
="cursor:hand"
>
Next
</
span
>
]
[
<
span
onclick
="PageChange('L')"
style
="cursor:hand"
>
Last
</
span
>
]
</
span
>
</
td
>
</
tr
>
</
table
>
</
xsl:template
>
</
xsl:stylesheet
>
青苹果Web应用商店
https://webapp.taobao.com/
PHP/ASP.NET/ASP/UCHOME/DISCUZ! X系列网站开发,详细需求联系
QQ:8511978
查看全文
相关阅读:
用AB对Webservice做压力测试
web压力测试工具(小而精)
让IIS支持10万并发
数据库之间数据转换最快方法
C#中执行Dos命令
.NET 4.0中使用内存映射文件实现进程通讯
HTML解析利器HtmlAgilityPack
C#快速找出磁盘内的所有文件
ORM for Net主流框架汇总与效率测试
新浪微博基于MySQL的分布式数据库实践
原文地址:https://www.cnblogs.com/Dicky/p/475351.html
最新文章
三天学会HTML5 之第一天
JavaScript 常用功能总结
你不可不知的HTML优化技巧
AngularJS入门教程1--配置环境
Google 新推出Background sync API
UWP 入门教程2——如何实现自适应用户界面
UWP入门教程1——UWP的前世今生
微软Edge 内嵌的JavaScript 引擎即将开源
哪些JavaScript IDE最好用?
ASP.NET Web API 应用教程(一) ——数据流使用
热门文章
OpenGl函数库
C++ 中的静态成员函数与静态成员变量
Visual Studio 2012 VC下 OpenGL 配置与使用
.net安装包自动安装Mysql数据库
.net中实现RSS方法
.Net中常用的重要的第三方组件
RSS介绍、RSS 2.0规范说明和示例代码
C#照片批量压缩小工具
面向企业级的开源WebGIS解决方案--MapGuide(对比分析)
MEF框架简介
Copyright © 2011-2022 走看看