知识大全 用C#或JavaScript扩展XSLT
Posted 函数
篇首语:人争气,火争焰,佛争一炷香。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 用C#或JavaScript扩展XSLT相关的知识,希望对你有一定的参考价值。
用C#或JavaScript扩展XSLT 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!
今天在umbraca上看到这样一篇文章 可以利用C#和JavaScript扩展XSLT 说实在的 以前不知道啊 前几天看到有位博主实现了一个split方法 利用原有的xslt函数 现在看来可以直接编程实现一个split函数了哦
下面看下怎么用C#和JavaScript扩展XSLT
一 使用C#
先上代码
<?xml version= encoding= UTF ?>
<!DOCTYPE xsl:Stylesheet [ <!ENTITY nbsp &#x A ; > ]>
<xsl:stylesheet
version=
xmlns:xsl= %
xmlns:msxml= urn:schemas microsoft :xslt
xmlns:msxsl= urn:schemas microsoft :xslt
xmlns:umbraco library= urn:umbraco library
xmlns:mycustomprefix= urn:mycustomprefix
exclude result prefixes= msxml umbraco library mycustomprefix msxsl >
<xsl:output method= xml omit xml declaration= yes />
<msxsl:script language= CSharp implements prefix= mycustomprefix >
<![CDATA[
public int? testNumber(int? num)
if(num> || num<= || num== null)
return ;
else
return num;
]]>
</msxsl:script>
<xsl:param name= currentPage />
<xsl:variable name= numberToTest select= mycustomprefix:testNumber(number(/macro/numberToTest)) />
<xsl:template match= / >
<! start writing XSLT >
<xsl:value of select= $numberToTest />
</xsl:template>
</xsl:stylesheet>
上面代码实现了一个testNumber函数 当输入数值大于 时返回 小于 时返回数值 例子很简单 看一眼就明了 不过去对喜欢xslt的同仁带来很大的发挥空间哦
二 用JavaScript
<?xml version= encoding= UTF ?>
<!DOCTYPE xsl:Stylesheet [ <!ENTITY nbsp &#x A ; > ]>
<xsl:stylesheet
version=
xmlns:xsl= %
xmlns:msxml= urn:schemas microsoft :xslt
xmlns:msxsl= urn:schemas microsoft :xslt
xmlns:umbraco library= urn:umbraco library
xmlns:mycustomprefix= urn:mycustomprefix
exclude result prefixes= msxml umbraco library mycustomprefix msxsl >
<xsl:output method= xml omit xml declaration= yes />
<msxsl:script language= JavaScript implements prefix= mycustomprefix >
<![CDATA[
function testNumber(num)
if(num> || num<= || num== null)
return ;
else
return num;
]]>
</msxsl:script>
<xsl:param name= currentPage />
<xsl:variable name= numberToTest select= mycustomprefix:testNumber(number(/macro/numberToTest)) />
<xsl:template match= / >
<! start writing XSLT >
<xsl:value of select= $numberToTest />
</xsl:template>
</xsl:stylesheet>
和使用C#一样 不多说了
现在就可以实现那个split函数了 是吧?不用那个substring before和substring after了哦
cha138/Article/program/net/201311/13790相关参考
知识大全 用javascript模拟C#的[Attribute]用法
用javascript模拟C#的[Attribute]用法 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一
C#与javascript简单交互 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 呼叫js R
解答关于C#的JavaScript函数的问题 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 如何
知识大全 JavaScript获取后台C#变量以及调用后台方法
JavaScript获取后台C#变量以及调用后台方法 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!
Javascript和C#之间的互相调用和访问 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 这
C#扩展方法使用 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 为指定类型扩展方法 定义类Cl
知识大全 javascript模拟实现C# String.format函数功能代码
javascript模拟实现C#String.format函数功能代码 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶
使用C#编写扩展存储过程 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 什么是扩展存储过程?
了解C#特性扩展方法 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 在我们的编程生涯中我们要
了解C#特性扩展方法[1] 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 在我们的编程生涯中我们