我的 xsl 文件中有以下代码
<script type="text/javascript">
var div = document.createElement("div");
div.innerHTML = "<!--[if lt IE 9]><i></i><![endif]-->";
</script>
改造后我变得空了div.innerHTML
<script type="text/javascript">
var div = document.createElement("div");
div.innerHTML = "";
</script>
如何保存<!--[if lt IE 9]><i></i><![endif]-->
在输出 html 文件中?
最佳答案
您可以尝试简单地对 <
进行编码字符以及 <xsl:text>
block :
<script type="text/javascript">
<xsl:text disable-output-escaping="yes">
var div = document.createElement("div");
div.innerHTML = "<!--[if lt IE 9]><i></i><![endif]-->";
</xsl:text>
</script>
或者使用 CDATA block :
<script type="text/javascript">
<xsl:text disable-output-escaping="yes">
<![CDATA[
var div = document.createElement("div");
div.innerHTML = "<!--[if lt IE 9]><i></i><![endif]-->";
]]>
</xsl:text>
</script>
或者也许您甚至可以使用 <xsl:comment>
节点,像这样
<script type="text/javascript">
var div = document.createElement("div");
div.innerHTML = "<xsl:comment><xsl:call-template name="iecc"/></xsl:comment>";
</script>
<xsl:template name="iecc">[if lt IE 9]><i></i><![endif]</xsl:template>
关于javascript - 在 XSL 转换期间在字符串中保留注释符号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21533059/