`
persistC
  • 浏览: 73540 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

xslt的简单使用[xml-->html]

    博客分类:
  • XSLT
阅读更多
XSLT命令[xml格式转换]
1.循环 <xsl:for-each...>
<xsl:for-each select="BookList/Item">
<tr>
<th align="left"> <xsl:value-of select=".//title" /></th>
<td><xsl:value-of select=".//categroy" /></td>
<td><xsl:value-of select=".//release-date" /></td>
<td><xsl:value-of select=".//author" /></td>
<td><xsl:value-of select="@price" /></td>
</tr>
</xsl:for-each>
2.排序 <xsl:sort...>
3.条件处理 <xsl:if...>或<xsl:choose...>或<xsl:when...>
4.名称模板
<xsl:template name...<xsl:template name...>,<xsl:param...>
<xsl:with-param...>,<xsl:call-template...>
5.编号方式 <xsl:number value format...>

xml文档[Article.xml] <?xml version="1.0" encoding="gb2312" ?>
<?xml-stylesheet type='text/xsl' href='Article.xsl'?>
<Articles>
<Article>
<ArticleID>2897</ArticleID>
<Title>[分享]千万数量级分页存储过程(带效果演示)</Title>
<Author>网络</Author>
<Abstract>[分享]千万数量级分页存储过程(带效果演示)</Abstract>
<PostDateTime>2006-02-27 18:29:53</PostDateTime>
<Dots>7</Dots>
<ColumnURL>/web/Article/viewColumn.aspx?ColID=19</ColumnURL>
<ColumnID>19</ColumnID>
<ColumnName>SQL Server</ColumnName>
<FileType>1</FileType>
<FilePath>resource/sql server/2006-02-27/20060227182953.htm</FilePath>
<Editor>网络</Editor>
<EditDateTime>2006-02-27 18:29:53</EditDateTime>
<Content>
  [分享]千万数量级分页存储过程(带效果演示)效果演示:
http://www.cn5135.com/_App/Opportunities/QueryResult.aspx
CREATE PROCEDURE CN5135_SP_Pagination
/******************************************************************
千万数量级分页存储过程
*******************************************************************
参数说明:
1.Tables :表名称,视图
2.PrimaryKey :主关键字
3.Sort :排序语句,不带Order By 比如:NewsID Desc,OrderRows Asc
4.CurrentPage :当前页码
5.PageSize :分页尺寸
6.Filter :过滤语句,不带Where
7.Group :Group语句,不带Group By
效果演示:http://www.cn5135.com/_App/Opportunities/QueryResult.aspx
***************************************************************/
(
@Tables varchar(1000),
@PrimaryKey varchar(100),
@Sort varchar(200) = NULL,
@CurrentPage int = 1,
@PageSize int = 10,
@Fields varchar(1000) = '*',
@Filter varchar(1000) = NULL,
@Group varchar(1000) = NULL
)
AS
/*默认排序*/
IF @Sort IS NULL OR @Sort = ''
SET @Sort = @PrimaryKey
DECLARE @SortTable varchar(100)
DECLARE @SortName varchar(100)
DECLARE @strSortColumn varchar(200)
>DECLARE @operator char(2)
DECLARE @type varchar(100)
DECLARE @prec int
/*设定排序语句.*/
IF CHARINDEX('DESC',@Sort)&gt;0
BEGIN
SET @strSortColumn = REPLACE(@Sort, 'DESC', '')
SET @operator = '&lt;='
END
ELSE
BEGIN
IF CHARINDEX('ASC', @Sort) = 0
SET @strSortColumn = REPLACE(@Sort, 'ASC', '')
SET @operator = '&gt;='
END
IF CHARINDEX('.', @strSortColumn) &gt; 0
BEGIN
SET @SortTable = SUBSTRING(@strSortColumn, 0, CHARINDEX('.',@strSortColumn))
SET @SortName = SUBSTRING(@strSortColumn, CHARINDEX('.',@strSortColumn) + 1, LEN(@strSortColumn))
END
ELSE
BEGIN
SET @SortTable = @Tables
SET @SortName = @strSortColumn
END
SELECT @type=t.name, @prec=c.prec
FROM sysobjects o
JOIN syscolumns c on o.id=c.id
JOIN systypes t on c.xusertype=t.xusertype
WHERE o.name = @SortTable AND c.name = @SortName
IF CHARINDEX('char', @type) &gt; 0
SET @type = @type + '(' + CAST(@prec AS varchar) + ')'
DECLARE @strPageSize varchar(50)
DECLARE @strStartRow varchar(50)
DECLARE @strFilter varchar(1000)
DECLARE @strSimpleFilter varchar(1000)
DECLARE @strGroup varchar(1000)
/*默认当前页*/
IF @CurrentPage &lt; 1
SET @CurrentPage = 1
/*设置分页参数.*/
SET @strPageSize = CAST(@PageSize AS varchar(50))
SET @strStartRow = CAST(((@CurrentPage - 1)*@PageSize + 1) AS varchar(50))
/*筛选以及分组语句.*/
IF @Filter IS NOT NULL AND @Filter != ''
BEGIN
SET @strFilter = ' WHERE ' + @Filter + ' '
SET @strSimpleFilter = ' AND ' + @Filter + ' '
END
ELSE
BEGIN
SET @strSimpleFilter = ''
SET @strFilter = ''
END
IF @Group IS NOT NULL AND @Group != ''
SET @strGroup = ' GROUP BY ' + @Group + ' '
ELSE
SET @strGroup = ''
/*执行查询语句*/
EXEC(
'
DECLARE @SortColumn ' + @type + '
SET ROWCOUNT ' + @strStartRow + '
SELECT @SortColumn=' + @strSortColumn + ' FROM ' + @Tables + @strFilter + ' ' +
@strGroup + ' ORDER BY ' + @Sort + '
SET ROWCOUNT ' + @strPageSize + '
SELECT ' + @Fields + ' FROM ' + @Tables + ' WHERE ' + @strSortColumn + @operator
+ ' @SortColumn ' + @strSimpleFilter + ' ' + @strGroup + ' ORDER BY ' + @Sort + '
'
)
GO
 <!--<![CDATA[]]>-->
</Content>
<Remarks>
<Remark PostUserName="guest" PostDateTime="2006-04-10 15:26:22">
<PostUserNickName>
访客
</PostUserNickName>
<Content>
OK!
</Content>
</Remark>
<Remark PostUserName="test" PostDateTime="2006-04-10 09:18:35">
<PostUserNickName>
游客
</PostUserNickName>
<Content>
good
</Content>
</Remark>
<Remark PostUserName="dream" PostDateTime="2006-04-10 08:45:35">
<PostUserNickName>
dream
</PostUserNickName>
<Content>
不错!
</Content>
</Remark>
<Remark PostUserName="no3" PostDateTime="2006-04-8 15:10:45">
<PostUserNickName>
梦幻3号
</PostUserNickName>
<Content>
看看
</Content>
</Remark>
<Remark PostUserName="admin" PostDateTime="2006-04-08 12:12:35">
<PostUserNickName>

</PostUserNickName>
<Content>
去试试
</Content>
</Remark>
<Remark PostUserName="Peter" PostDateTime="2006-03-15 16:12:35">
<PostUserNickName>
peterzb
</PostUserNickName>
<Content>

</Content>
</Remark>
</Remarks>
</Article>
</Articles>
xslt文档[Article.xsl]
<?xml version="1.0" encoding="gb2312" ?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output indent="yes" method="html" />
<xsl:template match="/">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=GB2312" />
 <title>
 <xsl:value-of select="Articles/Article/Title" />
 </title>
 <link REL='Stylesheet' HREF='/web/resource/bbs.css' TYPE='text/css' />
 <style>
.title0 {font-size:17px;font-family:arial;font-weight:bold;text-decoration:none;color:#FFFFFF;}
A.title2:link {COLOR: #000000; TEXT-DECORATION: none}
A.title2:visited {COLOR: #000000; TEXT-DECORATION: none}
A.title2:active {COLOR: #ff0000; TEXT-DECORATION: none}
A.title2:hover {COLOR: #ff0000; TEXT-DECORATION: none}
DIV.post {
    BORDER-RIGHT: #6e8bde 1px solid; BORDER-TOP: #6e8bde 1px solid; MARGIN-BOTTOM: 3px; BORDER-LEFT: #6e8bde 1px solid; BORDER-BOTTOM: #6e8bde 1px solid; BACKGROUND-COLOR: #f0eedf
}
DIV.postTitle {
    PADDING-LEFT: 3px; FONT-WEIGHT: bolder; FONT-SIZE: 13px; PADDING-BOTTOM: 3px; PADDING-TOP: 3px; BORDER-BOTTOM: #6e8bde 1px dashed; BACKGROUND-COLOR: #d6dff7
}
DIV.postText {
    PADDING-RIGHT: 10px; MARGIN-TOP: 10px; PADDING-LEFT: 10px; FONT-SIZE: 13px; MARGIN-BOTTOM: 10px; PADDING-BOTTOM: 5px; PADDING-TOP: 1px; BACKGROUND-COLOR: whitesmoke
}
</style>
</head>
<body>
<table width="800px" border="0" cellpadding="0" cellspacing="0">
<tr>
<td width="97">
    <a href="/web/Article/ViewColumn.aspx?Colid=7" target="_blank">VB</a>/<a href="/web/Article/ViewColumn.aspx?Colid=11" target="_blank">
        VBScript</a>
</td>
<td width="13%"><a href="/web/Article/ViewColumn.aspx?Colid=12" target="_blank">ASP</a>/
    <a href="/web/Article/ViewColumn.aspx?Colid=13" target="_blank">ASP.NET</a>
</td>
<td width="13%">
    <a href="/web/Article/ViewColumn.aspx?Colid=5" target="_blank">C#</a>
</td>
<td width="51">
    <a href="/web/Article/ViewColumn.aspx?Colid=30" target="_blank">J#</a>
</td>
<td width="15%">
    <a href="/web/Article/ViewColumn.aspx?Colid=20" target="_blank">ADO</a>/<a href="/web/Article/ViewColumn.aspx?Colid=21" target="_blank">
        ADO.NET</a></td>
<td width="17%">
    <a href="/web/Article/ViewColumn.aspx?Colid=9" target="_blank">JAVA</a>/<a href="/web/Article/ViewColumn.aspx?Colid=10" target="_blank">
        JavaScript</a></td>
<td width="11%">
    <a href="/web/Article/ViewColumn.aspx?Colid=14" target="_blank">HTML</a>/<a href="/web/Article/ViewColumn.aspx?Colid=15" target="_blank">
        XML</a></td>
<td width="12%">
    <a href="/web/default.aspx" target="_blank">返回首页</a></td>
</tr>
<tr>
<td width="97"><a href="/web/Article/ViewColumn.aspx?Colid=16" target="_blank">CSS</a></td>
<td><a href="/web/Article/ViewColumn.aspx?Colid=3" target="_blank">C</a>/<a href="/web/Article/ViewColumn.aspx?Colid=4" target="_blank">
        C++</a></td>
<td><a href="/web/Article/ViewColumn.aspx?Colid=6" target="_blank">Delphi</a></td>
<td width="51">
    <a href="/web/Article/ViewColumn.aspx?Colid=30" target="_blank">PHP</a></td>
<td>
    <a href="/web/Article/ViewColumn.aspx?Colid=5" target="_blank">.NET</a></td>
<td>
    <a href="/web/resource/CSDN/CSDN论坛精华.html" target="_blank">CSDN论坛精华</a></td>
<td>
    <a href="/web/Article/ViewColumn.aspx?Colid=19" target="_blank">Database</a></td>
<td><a href="#" onClick="javascript:window.external.addFavorite('/web/Article.aspx', 'Dream .NET')">加入收藏</a>
</td>
</tr>
<tr>
<td width="97">
    <a href="/web/Note/notes.aspx?function=all" target="_blank">GuestBook </a>
</td>
<td><a href="/web/bbs/bbs.aspx">BBS</a>
</td>
<td><a href="/web/Article/ViewColumn.aspx?Colid=22" target="_blank">PowerBuilder</a></td>
<td width="51"></td>
<td><a href="/web/Article/ViewColumn.aspx?Colid=24" target="_blank"> Novel</a></td>
<td></td>
<td><A href="#" onclick="javascript:window.external.addFavorite('/web/Article.aspx', 'Dream .NET')">
    </A>
</td>
<td>
    <A href="mailto:web-network@163.com?subject=About Dream .NET Web System">联系我们</A></td>
</tr>
<tr>
<td width="150px">
<a href="/web/Article/postArticle.aspx"><img src="/web/images/post.gif" border="0" alt="【发表文章】" />【发表文章】</a>
</td>
<td width="200px" colspan="2">
<a href="/web/Article/postArticle.aspx"><img src="/web/images/up.gif" border="0"  alt="【上传文章】" />【上传文章】</a>
</td> </tr>
</table>
<table width="800px" border="0" cellpadding="0" cellspacing="0">
<xsl:apply-templates />
<tr>
<td align="center"><a href="javascript:window.print()"><img src="/web/images/print.jpg" alt='【打印此文】' border="0" /></a>
     <a href="javascript:window.close();"><img src="/web/images/close.jpg" alt='【关闭窗口】' border="0" /></a>
</td>
</tr>
</table>
<table width="800px" border="0" cellpadding="0" cellspacing="0">
    <tr>
    <td valign="top">
    <hr size="1" class="hrc" color="blue"></hr>
    <table align="center" cellpadding="0" cellspacing="0" ID="Table1">
    <tr>
    <td>
    <a href="/web/about.htm">网站简介</a> | <a href="/web/partner.htm">合伙伙伴</a> | <a href="/web/map.htm">
    网站地图</a> | <a href="/web/contract.aspx">联系方式</a><br></br>
    </td>
    </tr>
</table>
</td>
</tr>
</table>
</body>
</html>
</xsl:template>
<xsl:template match="Articles">
<xsl:apply-templates />
</xsl:template>
<xsl:template match="Article">
<tr>
<td height="25" align="left">
您当前所在位置为:<A href="/web/default.aspx">首页</A>---&gt;
<A href="/web/Article/default.aspx">
文章系统</A>---&gt;
<xsl:element name="a">
<xsl:attribute name="href">
/web/Article/viewArticle.aspx?ColID=<xsl:value-of select="ColumnID" />
<!--
<xsl:choose>
<xsl:when test="ColumnID='19'">
/web/Article/viewArticle.aspx?ColID=19
</xsl:when>
<xsl:when test="ColumnID='5'">
/web/Article/viewArticle.aspx?ColID=5
</xsl:when>
<xsl:otherwise>
/web/Article/viewArticle.aspx?ColID=0
</xsl:otherwise>
</xsl:choose>
-->
</xsl:attribute>
<xsl:attribute name="title">
<xsl:value-of select="ColumnName" />
</xsl:attribute>
<xsl:value-of select="ColumnName" />
</xsl:element>
---&gt;<xsl:value-of select="Title" /></td>
</tr>
<tr>
    <td height="25" align="center">标题:<xsl:value-of select="Title" />
    [点击数:<xsl:value-of select="Dots" />]</td>
</tr>
<tr>
    <td height="25" valign="top" align="center">作者:<xsl:value-of select="Author" />
    [<xsl:value-of select="PostDateTime" />]</td>
</tr>
<tr>
    <td height="25" valign="top" align="center">最近修改者:<xsl:value-of select="Editor" />
    [<xsl:value-of select="EditDateTime" />]</td>
</tr>
<tr>
    <td height="25" valign="top" align="center" class="WithBreaks">概述:<xsl:value-of select="Abstract" /></td>
</tr>
<tr>
    <td height="25" valign="top" align="center">正文如下:</td>
</tr>
<tr>
    <td><pre><xsl:value-of select="Content" /></pre></td>
</tr>
<xsl:apply-templates select="/Articles/Article/Remarks" />
</xsl:template>
<xsl:template match="Remarks">
<tr><td>
<table width="800px" border="0" cellpadding="0" cellspacing="0">
<th align="left"><h3>Feedback</h3></th>
<xsl:for-each select="Remark">
<div class="post">           
<tr>
   <div class="postTitle">
   <td>
   回复人:<b>
   <font color="#3366CC">
   <xsl:value-of select="@PostUserName" />
   (<xsl:value-of select="PostUserNickName" />)
   </font>
   </b>
   </td>
   <td align="right">
   <font color="#000000">
   <xsl:value-of select="@PostDateTime" />
   </font>  
   第<font color="red"><xsl:number value="position()" format="1"/></font>楼
   </td>
   </div>
</tr>
<tr>
<td colspan="2">
<div class="postText">
<xsl:value-of select="Content" />
</div>               
</td>
</tr>
</div>
</xsl:for-each>
</table></td></tr>
</xsl:template>
</xsl:stylesheet>
分享到:
评论

相关推荐

    XSLT简单教程- XSLT的实例

    ### XSLT简单教程——XSLT的实例详解 #### 一、XSLT简介与工作原理 XSLT(Extensible Stylesheet Language Transformations)是一种用于转换XML文档的语言。它允许开发人员按照预定义的规则对XML文档进行转换,...

    使用XSLT将XML文档转换成HTML文档

    &lt;title&gt;使用 XSLT 实现 XML 文档到 HTML 文档的转换&lt;/title&gt; &lt;script language="JavaScript"&gt; function xslt(){ var XMLdocument1 = new ActiveXObject("Microsoft.XMLDOM") var XSLdocument1 = new ...

    xslt总结及使用xslt将xml显示的例子

    以下是一个简单的XSLT示例,它将XML文档中的每个`&lt;book&gt;`元素转换为HTML列表项: ```xml &lt;xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"&gt; &lt;xsl:output method="...

    [xslt]xml文件

    以下是一个简单的XSLT示例,它将上述XML转换为HTML表格: ```xml &lt;xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"&gt; &lt;xsl:output method="html" indent="yes"/&gt; ...

    使用xslt转化xml数据形成word文档导出

    创建XSD文件的过程相对简单,只需在XML编辑器(如Visual Studio)中打开XML文档,然后通过“XML&gt;创建架构”菜单选项自动生成。生成的XSD文件定义了XML元素的规则,如元素名称、类型和顺序。 有了XML数据和XSD文件后...

    XSLT-Mastering.XML.Transformations

    这个示例演示了如何创建一个简单的XSLT样式表,将XML文档转换为带有“Hello World”消息的HTML文档。通过分析这个示例,读者可以理解XSLT样式表的基本结构和工作流程。 ### XPath:描述针与 haystack 的语法 XPath...

    利用XSLT转换XML.pdf

    - **XML到PDF**:使用XSLT将XML数据转换为PDF格式,便于打印或长期存档。 - **数据格式转换**:例如将旧版本的XML文档升级到新版本的格式,确保数据的兼容性和一致性。 #### OracleXSLT处理器的使用 - **oraxsl...

    java中使用xslt转换xml成为另一个xml

    以下是一个简单的Java代码示例,演示了如何执行XML到XML的XSLT转换: ```java import javax.xml.transform.*; import javax.xml.transform.stream.*; import java.io.*; public class XsltTransformerExample { ...

    Delphi下最好用的XML/XSLT组件DIXML最新版本无需密码效率超高

    DIXML组件集成了XSLT引擎,使得在Delphi中进行复杂的XML到XML或XML到HTML的转换变得轻松简单。 3. **易于使用**:DIXML组件的API设计直观,符合Delphi的编程习惯,使得开发者能够快速上手。无论是新手还是经验丰富...

    xslt控制xml样式并被html、c#后台调用

    在HTML页面中,可以使用`&lt;xsl:import&gt;`或`&lt;xsl:include&gt;`标签引入XSLT样式表。当浏览器加载XML文档时,会同时加载指定的XSLT文件,然后将XML转换为HTML。这种方式使得前端展示可以根据需要动态地调整样式,提高用户...

    xslt实例(实际例子)

    它被广泛用于将XML数据转换为其他格式,如HTML、PDF或者简单的文本,甚至可以用来生成XML文档的新结构。在这个“xslt实例(实际例子)”的压缩包中,你将找到一系列用于学习和实践XSLT的实例,非常适合入门和中级学习...

    XSLT将XML装换为XHTML(带源码)

    在本教程中,我们将详细探讨如何使用XSLT将XML转换为XHTML,以适应网页展示的需求。 首先,我们需要了解XSLT的基本结构。XSLT文件本身也是一个XML文档,由模板、模式和指令组成。模板定义了输出结果的结构,模式则...

    使用XSLT和XML创建Excel

    XSLT使用样式表(Stylesheet)来定义转换规则,这些规则可以将XML数据转换为其他格式,如HTML、PDF或,正如我们的主题所示,Excel。 首先,我们需要一个XML源文件,其中包含要转换的数据。这个文件通常以结构化的...

    JSP结合XML+XSLT将输出转换HTML

    在这个JSP页面中,我们首先加载XML和XSLT文件,然后创建一个`Transformer`实例,使用XSLT文件作为参数。之后,我们调用`transform`方法将XML转换为HTML,并将结果写入到一个`StringWriter`。最后,JSP将HTML内容输出...

    XML---编程宝典

    5. **XSLT**:XML样式表转换语言,用于转换XML文档的结构和内容。 XML与Web服务: 1. **SOAP**:简单对象访问协议,基于XML的协议,用于在Web上交换结构化信息。 2. **WSDL**:Web服务描述语言,使用XML定义Web服务...

    XSLT解释XML实例

    XSLT,全称为“可扩展样式表语言转换”(eXtensible Stylesheet Language Transformations),是一种强大的语言,用于将XML(可扩展标记语言)文档转换为其他格式,如HTML、PDF或纯文本。XML是一种结构化数据存储...

    XSLT简便教程,XSLT简便教程

    -- Emp.xml --&gt; &lt;ROWSET&gt; &lt;ROW num="1"&gt; &lt;EMPNO&gt;7839&lt;/EMPNO&gt; &lt;!-- 更多节点 --&gt; &lt;/ROW&gt; &lt;!-- 更多ROW节点 --&gt; &lt;/ROWSET&gt; ``` 为了将这个文档转换为HTML格式,我们可以创建一个简单的XSLT样式表: ```xslt ...

    xslt+xml+jquery建站

    为了解决这一问题,“xslt+xml+jquery建站”提供了一种高效且灵活的建站方案,它将XML作为数据结构,XSLT作为样式转换语言,jQuery作为前端交互库,三者结合,可以实现设计与开发的高效协同。 XML(eXtensible ...

    xslt_filter-1.5.2.tar.gz

    它基于XSL Transformations(XSLT)标准,这是一种强大的样式表语言,能够将XML文档转换为其他格式,如HTML、PDF或简单的文本。XSLT Filter 1.5.2的发布,为开发者提供了更高效、灵活的XML数据处理工具。 在了解...

    XML - Addison Wesley - Essential XML Quick Reference

    《Essential XML Quick Reference》是一本针对程序员的快速参考指南,涵盖了XML、XPath、XSLT、XML Schema、SOAP等关键技术及其应用。本书由Aaron Skonnard与Martin Gudgin共同撰写,旨在帮助读者快速掌握XML相关...

Global site tag (gtag.js) - Google Analytics