XSL自定义函数
2004-12-02 13:53
393 查看
利用微软的XSL的继承特性,用户可以自定义XSL函数.
基本原理是用户写的脚本代码写在msxsl中,并设置这部分msxsl继承到用户自定义空间中,那么用户就可以通过用户自定义空间使用msxsl中的脚本代码.
步骤:
1. xsl:stylesheet中定义msxml和用户空间.
xmlns:msxsl="urn:schemas-microsoft-com:xslt" version="1.0"
xmlns:user="MyScript"
其中xmlns:user=可以等于任意值
2. 让msxsl继承用户空间.
自定义函数写在msxsl:script之间,并且加上implements-prefix="user"
例子:
-------------------------------------------------------------
1.xml
-------------------------------------------------------------
<?xml version="1.0" encoding="GB2312"?>
<?xml-stylesheet type='text/xsl' href='1.xsl'?>
<Book>
<Title>123</Title>
</Book>
-------------------------------------------------------------
1.xsl
-------------------------------------------------------------
<?xml version="1.0" encoding="GB2312"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:msxsl="urn:schemas-microsoft-com:xslt" version="1.0"
xmlns:user="UserCode">
<msxsl:script language="VBScript" implements-prefix="user">
<![CDATA[
Function GetName(node)
GetName = node.item(0).nodeName
End Function
]]>
</msxsl:script>
<xsl:template match="/">
<xsl:value-of select="user:GetName(Book/Title)"/>
</xsl:template>
</xsl:stylesheet>
基本原理是用户写的脚本代码写在msxsl中,并设置这部分msxsl继承到用户自定义空间中,那么用户就可以通过用户自定义空间使用msxsl中的脚本代码.
步骤:
1. xsl:stylesheet中定义msxml和用户空间.
xmlns:msxsl="urn:schemas-microsoft-com:xslt" version="1.0"
xmlns:user="MyScript"
其中xmlns:user=可以等于任意值
2. 让msxsl继承用户空间.
自定义函数写在msxsl:script之间,并且加上implements-prefix="user"
例子:
-------------------------------------------------------------
1.xml
-------------------------------------------------------------
<?xml version="1.0" encoding="GB2312"?>
<?xml-stylesheet type='text/xsl' href='1.xsl'?>
<Book>
<Title>123</Title>
</Book>
-------------------------------------------------------------
1.xsl
-------------------------------------------------------------
<?xml version="1.0" encoding="GB2312"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:msxsl="urn:schemas-microsoft-com:xslt" version="1.0"
xmlns:user="UserCode">
<msxsl:script language="VBScript" implements-prefix="user">
<![CDATA[
Function GetName(node)
GetName = node.item(0).nodeName
End Function
]]>
</msxsl:script>
<xsl:template match="/">
<xsl:value-of select="user:GetName(Book/Title)"/>
</xsl:template>
</xsl:stylesheet>
相关文章推荐
- oracle中的分页
- 獲取SQL SERVER用戶表信息游標
- Java的中文编程与配置心得
- 使用FSO把文本信息导入数据库
- 用ASP备份数据库
- 如何在VB例程中接收自定义消息
- UML应用点滴积累
- tiles和struts初步应用
- Mysql中左连接的使用
- 移居csdn,今天想到自己的写shell的能力需要提高~
- SymbianOS Series 60学习笔记三:数据库初探
- ora-600[12333]错误小结及跟踪方法
- 利用hook截获进程的API调用
- XML的QL查询语言及其实现-1
- SymbianOS Series 60学习笔记三:数据库初探
- 在线人数的统计方法。
- ASP实用代码
- 权限管理的设计和实现
- 使用DLL时如何处理“System.NullReferenceException”类型的异常
- Asp及Web开发中的常见问题.