【问题标题】:Leave comment symbols in the string during XSL transformationXSL 转换期间在字符串中保留注释符号
【发布时间】:2014-02-03 16:56:31
【问题描述】:

我的 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>

如何在输出的html文件中保留&lt;!--[if lt IE 9]&gt;&lt;i&gt;&lt;/i&gt;&lt;![endif]--&gt;

【问题讨论】:

    标签: javascript xml xslt


    【解决方案1】:

    您可以尝试简单地将&lt; 字符与&lt;xsl:text&gt; 块一起编码:

    <script type="text/javascript">
    <xsl:text disable-output-escaping="yes">
        var div = document.createElement("div");
        div.innerHTML = "&lt;!--[if lt IE 9]><i></i>&lt;![endif]-->";
    </xsl:text>
    </script>
    

    或使用CDATA 块:

    <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>
    

    或者你甚至可以像这样使用&lt;xsl:comment&gt; 节点

    <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]>&lt;i>&lt;/i>&lt;![endif]</xsl:template>
    

    【讨论】:

    • CDATA 以div.innerHTML = "&amp;lt;!--[if lt IE 9]&amp;gt;&amp;lt;i&amp;gt;&amp;lt;/i&amp;gt;&amp;lt;![endif]--&amp;gt;结尾
    • 节点给出div.innerHTML = "&lt;!----&gt;";
    • @Ask 查看我的更新答案。我已经使用 xslttest.appspot.com 验证了每个解决方案
    【解决方案2】:

    好的,我找到了solution。我不得不同时使用CDATA&lt;xsl:comment&gt;

    <script type="text/javascript">
        var div = document.createElement("div");
        div.innerHTML = "<xsl:comment><![CDATA[ [if lt IE 9]><i></i><![endif] ]]></xsl:comment>";
    </script>
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2018-08-21
      • 1970-01-01
      • 1970-01-01
      • 2014-04-16
      • 2019-01-07
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多