XSL自定义函数

类别:Asp 点击:0 评论:0 推荐:

利用微软的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>

本文地址:http://com.8s8s.com/it/it7860.htm