Я использую XSLT (1.0) для создания документа Word с использованием WordML.У меня есть разные таблицы, и в одном из столбцов мне нужно добавить значения, разделенные переводом каретки.
То есть: вместо Lot1Lot2Lot3
мне нужно:
Lot1
Lot2
Lot3
Я искалвсе связанные темы, но я не мог найти решение, которое могло бы решить мою проблему.Я пытался использовать <w:br/>
или <xsl:text></xsl:text>
или код dec / внутри <xsl:text>
, но не сработал, так как все еще вижу результат в той же строке.
XML:
<Root>
<elemName>Test</elemName>
<elemDescription>Description</elemDescription>
<Items>
<Item1Flag>Y</Item1Flag>
<Item1Value>123213123</Item1Flag>
</Items>
<Items>
<Item1Flag>Y</Item1Flag>
<Item1Value>12223123</Item1Flag>
</Items>
<Items>
<Item1Flag>Y</Item1Flag>
<Item1Value>1232423</Item1Flag>
</Items>
</Root>
Таблица стилей:
...
<w:t><xsl:call-template name="concatItems">
<xsl:with-param name="elements" select="Items[Item1Flag='Y']/Item1Value"/>
</xsl:call-template>
</w:t>
...
<!-- Template -->
<xsl:template name="concatItems">
<xsl:param name="elements"/>
<xsl:variable name="result">
<xsl:for-each select="$elements">
<xsl:value-of select="."/>
<xsl:if test="position()!=last()"><w:br/></xsl:if>
</xsl:for-each>
</xsl:variable>
<xsl:value-of select="$result"/>
</xsl:template>