如何在保留脚本标签的同时使用XSLT打印或缩进HTML?

时间:2012-01-19 01:56:49

标签: html ruby xml xslt nokogiri

我正在使用以下XSLT来使用Nokogiri缩进我的HTML:

<div>
  Blah
</div>
<script type="text/javascript">
  alert("hello");
</script>

使用这个Ruby代码:

  doc = ::Nokogiri::XML.parse(html)
  xsl = ::Nokogiri::XSLT(File.read('pretty_print.xsl'))
  new_html = xsl.apply_to(doc).to_s

pretty_print.xsl:

<?xml version="1.0" encoding="ISO-8859-1"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
  <xsl:strip-space elements="*" />
  <xsl:output omit-xml-declaration="yes" method="xml" indent="yes" />

  <xsl:template match="node()|@*">
    <xsl:copy>
      <xsl:apply-templates select="node()|@*" />
    </xsl:copy>
  </xsl:template>

</xsl:stylesheet>

我不熟悉XSLT。有没有一种简单的方法可以确保不删除脚本标记?

0 个答案:

没有答案