Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > XML, XSL > Вставить тэги


Автор: Rigel 7.3.2009, 14:35
Необходимо привести в приличный вид выводимый на экран текст. К сожалению, его не удается передать как значение тэга, потому что это нарушило бы структуру дерева - так что, текст вынужденно передается через аттрибут. Процедура замены, которую я присобачил, выполняется, и заменяет перевод строки на заданный стринг, и все это работает - но только до тех пор, пока не пытаюсь вывести тэг, он просто пропадает бесследно (хотя буква рядом вставляется).

Код

    <xsl:variable name="outtext_a">
         <xsl:call-template name="replace-string">
        <xsl:with-param name="text" select="@s_mess"/>
        <xsl:with-param name="from">ERSR</xsl:with-param>
        <xsl:with-param name="to"><br/></xsl:with-param>
        </xsl:call-template>
       </xsl:variable>
<xsl:value-of select="$outtext_a"/>

Как вставить перевод строки в такой текст?

Автор: sir_nuf_nuf 7.3.2009, 19:20
Уже обсуждали - не стоит смешивать XML и HTML
Либо используйте XHTML, либо HTML -  как CDATA

Код

<xsl:with-param name="to"><![CDATA[<br/>]]></xsl:with-param>

Автор: Rigel 7.3.2009, 20:42
Цитата(sir_nuf_nuf @ 7.3.2009,  19:20)
Уже обсуждали - не стоит смешивать XML и HTML
Либо используйте XHTML, либо HTML -  как CDATA

Код

<xsl:with-param name="to"><![CDATA[<br/>]]></xsl:with-param>

Вот то-то я и говорю, что оба способа почему-то не проходят. В первом случае тэг просто исчезает, ставлю на его место буквы - они выводятся... знаю как правильно выводить значение xml-тэга, но с аттрибутом этого тега copy почему-то не проходит.

 Сейчас попробовал <![CDATA[<br/>]]> - он не выполняется а выводится на экран (FF и MSIE). 

Автор: sir_nuf_nuf 7.3.2009, 23:44
а привидите-ка свой шаблон, replace-string.
Вы опять пытаетесь вставить html как строку, а потом заставить это работать в FF - не получится ) вы же это и проверили.
После того как вы вставили тег в текст - он будет текстом.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)