1

我想在 XSL 中找到 XML 元素的值。我的 JS 选择了一个 XML 文档,但我需要获取其他文档中的元素。

我不确定这是否可能,或者我的语法是否错误。

这就是我所拥有的。

<td>
<xsl:value-of select="document(newXMLfile.xml)/Customers/customer/type" />
</td>

新文件的 XML 如下所示

<?xml version="1.0" encoding="utf-8" ?> 
  <Customers> 
      <customer> 
          <Order>12000</Order>
          <ID>200</ID> 
          <Date>1 Sep 2010</Date> 
          <type>true</type> 
      </customer>
 </Customers>
4

3 回答 3

0

(1)确保在日志/控制台中查看并提及任何错误消息。如果您不直接从命令行运行 XSLT 处理器,这一点尤其重要。(你提到在 JavaScript 中运行它。)

(2)确保您的 XML 端文档文件正在被读取。您可以将给定的文件名更改为document()您确定不存在的文件名(例如document('XXX_newXMLfile.xml')),以验证您在未正确指定文件时看到了适当的错误消息。如果您必须指定本地文件的路径,请使用以下表示法:

'file:///path/newXMLfile.xml'

是的,那是 . 之后的三个斜线file:。在 Windows 上,path通常会包含一个驱动器名称,例如c:.

于 2013-10-30T12:49:52.193 回答
0

使用引号:

<xsl:value-of select="document('newXMLfile.xml')/Customers/customer/type" />
于 2013-10-30T02:39:11.593 回答
0

调用 document() 的一个很好的调试技术是使用调用

<div id="debug">
  <xsl:copy-of select="document('newXMLfile.xml')"/>
</div>

将文档直接复制到输出。这将帮助您确定问题是在阅读文档还是在选择其中的节点。

于 2013-10-30T08:00:36.650 回答