Parsen von XML und Null-Wert in XSL-Dokument
Ich bin Parsen von XML in folgendem format:
<J_TITLE>
<DATA pid="1"><xsl:value-of select = "//TITLE"/></DATA>
<DATA pid="3"><xsl:value-of select = "//TITLE_FOR_3"/></DATA>
</J_TITLE>
Was ich tun möchte, ist zu überprüfen, ob TITLE_FOR_3 null ist. Wenn es ändern Sie den Wert auf etwas anderes für die DATEN-pid = 3.
Ich habe versucht, führen Sie die folgenden, aber das wird nicht funktionieren:
<JPM_TITLE>
<DATA pid="1"><xsl:value-of select = "//TITLE"/></DATA>
<xsl:value-of select = "//TITLE_FOR_3"/>
<xsl:choose>
<xsl:when test="string-length($NorTitle)!=0">
<DATA pid="3"><xsl:value-of select = "//TITLE"/></DATA>
</xsl:when>
<xsl:otherwise>
<DATA pid="3"><xsl:value-of select = "//TITLE_FOR_3"/></DATA>
</xsl:otherwise>
</xsl:choose>
</JPM_TITLE>
Oben etwas geändert hat, von meinem ursprünglichen test. Wie kann ich den Namen der value-of - select-Teil, so dass ich tun kann, die Länge der Zeichenfolge zu überprüfen? Oder wie kann ich pass den Wert in die string-Länge zu überprüfen?
- ich denke, Sie wollen verwenden Sie die "xsl:vaiable" anstelle von "xsl:value-of".
Du musst angemeldet sein, um einen Kommentar abzugeben.
Du es so machen:
..und wie Marcus richtig zeigen, machen Sie den test wie:
oder:
(in XPath eine Zeichenfolge ist 'wahr', wenn es nicht leer ist)
normalize-space()
schneiden der führende und nachfolgende Leerzeichen.