[英]How to output ampersand (&) from XSLT
我正在将所有&
转换为&
在我的 XML 中,以便 XSLT 能够编译。 我将 XML 样式化为 HTML。 但是,当 XSLT 填充文本框时,我需要&
显示为&
。
例如,它在文本框中显示“ you & me
”,但我需要看到“ you & me
”。
&
&
XSLT 中的 & 一样一般来说,这里有用于输出&
的替代技术。 作为&
:
在全球范围内:
<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"/>
现在,在你的具体情况下,你说&
文本框中的 s 显示为“ &
”。 我根本不这么认为。 除了 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>
这在浏览器中呈现如下:
可以看到,渲染没有问题&
作为&
。
在许多情况下&
会很好用。 它是有效的 xsl,浏览器也能理解。 XSL,有些人仍然爱着你。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.