XSLT中XPath使用参数过滤无结果,替换字面量却正常的问题
解决XSL参数在XPath过滤中无效的问题
你代码里的问题很明确:把参数$MemberName放在了单引号里,这会让XPath将其视为普通字符串'$MemberName',而不是调用你定义的参数。系统会去查找MEMBER_NAME等于字符串"$MemberName"的节点,自然匹配不到数据,所以输出为空。
修正后的代码只需要去掉参数外面的单引号:
<xsl:param name="MemberName">Lara</xsl:param> <!-- other stuff --> <xsl:for-each select="LIBRARY/MEMBER[MEMBER_NAME = $MemberName]"> <!-- other stuff --> </xsl:for-each>
直接使用$MemberName就能让XSL正确引用你定义的参数值,和你直接写'Lara'的效果一致,同时保留了参数的灵活性。
内容的提问来源于stack exchange,提问作者safex
相关产品推荐
相关产品推荐

