In Anbetracht dieser XML gibt es einen XPath, die mir den ‚Test‘ geben und ‚Namen‘ Werte?
Frage
Ich brauche den Wert des 'test' Attribut in xsl zu bekommen: wenn Tag und das Attribut 'name' im xsl: call-template-Tag. Diese XPath wird mir ziemlich nahe:
..../xsl:template/xsl:choose/xsl:when
Aber das gibt nur die ‚wann‘ Elemente, nicht die genauen Attributwerte ich brauche.
Hier ist ein Ausschnitt meiner XML:
<xsl:template match="field">
<xsl:choose>
<xsl:when test="@name='First Name'">
<xsl:call-template name="handleColumn_1" />
</xsl:when>
</xsl:choose>
Lösung
Steve Cooper, antwortete den ersten Teil. Für den zweiten Teil können Sie verwenden:
.../xsl:template/xsl:choose/xsl:when[@test="@name='First Name'"]/xsl:call-template/@name
, die spezifisch die xsl passen auf: Wenn in Ihrem Snippet. Wenn Sie es wollen in der Regel übereinstimmen, dann können Sie:
.../xsl:template/xsl:choose/xsl:when/xsl:call-template/@name
Andere Tipps
Sie tun .../xsl:template/xsl:choose/xsl:when/@test
wollen
Wenn Sie möchten, um tatsächlich den Wert bekommen ‚Vorname‘ aus dem Test-Attribute, bist du kein Glück - der Inhalt innerhalb des Attributs ist nur eine Zeichenfolge, und nicht ein Stück xml, so können Sie‘ t XPath es. Falls Sie Fragen erhalten müssen, müssen Sie String-Manipulation (ZB Teilzeichenfolge) verwenden, um die richtigen Inhalte zu bekommen