vbScript函数返回的值不能转换为XSL数据类型



当我尝试使用XSL显示XML数据时,得到以下错误。VBScript函数抛出这个错误:

函数" myfunctionname "返回一个不能转换为XSL数据类型的值。原因是什么呢?
代码截图如下:1. xml

        <Client>
             <ClientID>34987886</ClientID>
               <LnkSeqNo>1</LnkSeqNo>
        </Client>

2。XSL代码,功能。

    Dim ClientID 
    function SetClientID(ID)
        ClientID = ID
    end function

    <xsl:for-each select="Object/Client">
           <xsl:if test="LnkSeqNo[. = '1' or . = '57']"> 
              <xsl:value-of disable-output-escaping="yes" select="vbs:SetClientID(string(ClientID))"/>
..
          </xsl:if>
    </xsl:for-each>

问题是您的函数根本不返回任何值,而xsl:value期望一个值。如果你只想执行函数而不输出任何东西,你可能会让函数返回一个空字符串,但是我建议重新考虑你的方法。在XSLT中使用带有副作用的函数通常不是好的做法,而且与XSLT的原则背道而驰。

相关内容

  • 没有找到相关文章

最新更新