Xslt и многострочный текст (Sitecore) - PullRequest
0 голосов
/ 04 февраля 2010

У меня есть поле в элементе (многострочный текст), которое я выводил при рендеринге xslt. Проблема в том, что возврат carrigae не отображается в моем выводе - что мне нужно сделать, чтобы мой вывод xslt отображал возврат carrigae?

Ответы [ 2 ]

5 голосов
/ 04 февраля 2010

Используйте этот шаблон для замены новых строк:

<xsl:template name="br">
    <xsl:param name="text"/>
    <xsl:choose>
        <xsl:when test="contains($text,'&#xa;')">
            <xsl:value-of select="substring-before($text,'&#xa;')"/>
            <br/>
            <xsl:call-template name="br">
                <xsl:with-param name="text">
                    <xsl:value-of select="substring-after($text,'&#xa;')"/>
                </xsl:with-param>
            </xsl:call-template>
        </xsl:when>
        <xsl:otherwise>
            <xsl:value-of select="$text"/>
        </xsl:otherwise>
    </xsl:choose>
</xsl:template>

И назовите его для вашего текстового элемента, например так:

0 голосов
/ 04 февраля 2010

Возврат каретки в источнике XML игнорируется как пробел.(Действительно, все последовательные пробельные символы сжаты в один пробел.) Однако, возможно, один из них будет работать вместо простого возврата каретки?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...