인터넷에서 다른 템플릿에 변수 전달에 대한 참조가 있습니다. 나는 모든 참고 문헌을 따르려고했지만, 필자가 채워야 할 가치가 없다.다른 템플릿에 변수 값 가져 오기
<Item>
<Test>
<ID>123345677</ID>
</Test>
<DisplayID>99884534</DisplayID>
</Item>
내가 DisplayID 표시가 null가 아닌 경우 다른, MsgId에 요소를 채우는 ID에서 값을 얻을 필요가 :이 XML 파일이 있습니다. 내 XSLT :
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="xml" version="1.0" encoding="UTF-8" indent="yes"/>
<xsl:template match="ID">
<xsl:variable name="IDV" select="substring(.,0,35)"/>
<xsl:apply-templates select="DisplayID">
<xsl:with-param name="IDP" select="$IDV"/>
</xsl:apply-templates>
</xsl:template>
<xsl:template match="DisplayID">
<xsl:param name="IDP"/>
<xsl:element name="MsgId">
<xsl:choose>
<xsl:when test=".!='' or ./*">
<xsl:value-of select="substring(.,0,35)"/>
</xsl:when>
<xsl:otherwise>
<xsl:value-of select="substring($IDP,0,35)"/>
</xsl:otherwise>
</xsl:choose>
</xsl:element>
</xsl:template>
DisplayID 표시가 나는 DisplayID 표시의 값을 제거하면 ID에서 얻는 값은 없습니다, 그러나 노력 null가 아닌 경우 조건. 내가 제대로하고 있는지 나는 모른다.
귀하의 의견은 대단히 감사합니다.
"null"로 무엇을 의미하는지 명확하지 않습니다. 요소가 전혀 존재하지 않거나 요소에 문자열 값이 없음을 의미 할 수 있습니다. –