Неэкранирование сущностей HTML с помощью XSLT - PullRequest
2 голосов
/ 01 ноября 2011

У меня есть внешний результат скрипта в моем шаблоне XSL, содержит экранированные html специальные символы. Как я могу удалить его из XSLT и вывести в окончательный документ?

Я уже избежал результата, disable-output-escaping="yes" не может помочь мне.

Например (результат из внешнего скрипта):

<!--376473658726587-->
<a href="/">some text</a>

1 Ответ

4 голосов
/ 01 ноября 2011

Это преобразование :

<xsl:stylesheet version="1.0"
 xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
 <xsl:output method="text"/>
 <xsl:strip-space elements="*"/>

 <xsl:template match="script">
  &lt;script>
    <xsl:value-of select="normalize-space()"/>
  &lt;/script>
 </xsl:template>
</xsl:stylesheet>

при применении к этому документу XML (вы не предоставили его !!!):

<script>
&lt;!--376473658726587--&gt;
&lt;a href="/"&gt;some text&lt;/a&gt;
</script>

дает желаемый, правильный результат :

  <script>
    <!--376473658726587--> <a href="/">some text</a>
  </script>
...