我正在将所有&
转换为我的XML中的&
,以便XSLT进行编译。我正在将XML设计为HTML。但是,当XSLT填充文本框时,我需要&
显示为&
。
例如,它在文本框中显示“you & me
”,但我需要看到“you & me
”。
答案 0 :(得分:9)
&
输出为&
通常,以下是将&
输出为&
的替代技术:
全局:
<xsl:output method="html"/>
or
<xsl:output method="text"/>`
对于源自XSLT的&符号:
<xsl:text disable-output-escaping="yes"><![CDATA[&]]></xsl:text>
对于源自输入XML的&符号:
<xsl:value-of select="XPATH EXPRESSION" disable-output-escaping="yes"/>
现在,在您的具体情况下,您说文本框中的&
被显示为&#34; &
&#34;。我一点也不明白。除了XML或XSLT之外,我在上面展示了如何生成&
而不是&
,HTML本身对&
没有任何问题......
考虑这个简单的测试HTML:
<html>
<body>
<h3>No &amp; is displayed in any of these cases:</h3>
<div>
In an input box:
<input type="text" value="Ampersand: &"/>
</div>
<div>
In a text area:
<textarea>Ampersand: &</textarea>
</div>
<div>In a div: Ampersand: &</div>
</body>
</html>
这在浏览器中呈现如下:
如您所见,将&
呈现为&
没有问题。
答案 1 :(得分:2)
在许多情况下&
会很好用。它是有效的xml,浏览器也能理解。 XSL,有些人仍然爱你 - youuuuuuuuu。