我试图在模板中使用一个变量来获取祖先的兄弟姐妹,然后如果这个兄弟关系是某个元素,我想做一些事情。
我能够正确地抓取兄弟姐妹,但是当我使用if来检查节点是否是我想要的元素时,它永远不会被击中。当兄弟元素是“desiredElement”时,如果它找不到它,那么我的元素有什么问题呢?
<xsl:template match="deltaxml:text[@deltaxml:deltaV2='A']">
<xsl:variable name="nextVal" select="ancestor::*:textGroup/following-sibling::*[1]"/>
<xsl:if test="$nextVal = 'desiredElement'">
<!-- do something -->发布于 2017-12-14 18:48:57
使用<xsl:if test="$nextVal/self::desiredElement">,或者如果该元素位于与<xsl:if test="$nextVal/self::deltaxml:desiredElement">不同的名称空间中。如果希望对元素名进行字符串比较,还可以比较local-name($nextVal) = 'desiredElement'。当前的尝试将元素的字符串值/内容与字符串desiredElement进行比较。
https://stackoverflow.com/questions/47820050
复制相似问题