使用 xslt 1.0 从 HTML 属性转义 "quot"

Escaping "quot" using xslt 1.0 from HTML attribute

我有 HTML 标签如下:

<input type="hidden" name="englishLongDesc" value ="Box height is 5.0 mm (2.9"/74mm length) used for packing"/>

我已经使用如下所示的 XSLT 1.0 来获取它的值:

<content name="Box Description" >
          <xsl:value-of select="./input[@name='englishLongDesc']/@value" />
</content>

我得到答案 盒子高度是 5.0 毫米 (2.9

因为中间有"(quot)。

问题:我无法更改 HTML 值,但我可以获取完整值吗(即 盒子高度为 5.0 毫米(2.9"/74 毫米长度) ) 用于通过 XSLT 1.0 打包 )?

不*,因为 XSLT 代码正在做 'right' 事情。 HTML 坏了。

这个:

<input type="hidden" name="englishLongDesc" value ="Box height is 5.0 mm (2.9"/74mm length) used for packing"/>

坏了HTML。 value属性的内容真的是:

Box height is 5.0 mm (2.9

而这一点只是垃圾:

/74mm length) used for packing"

[*] 因为这是垃圾标签汤,所以 DOM 模型可能在某处仍然包含一个杂散的 text() 节点。通过分析 DOM 模型本身(编写一个执行此操作的 XSLT 样式表),您可能能够找出一个额外的表达式来获取尾随位并使用连接来掩盖问题。