我有以下xml格式:
<tcm:Data>
<tcm:Title>Test</tcm:Title>
<tcm:Type>Normal</tcm:Type>
<tcm:Schema xlink:type="simple" xlink:title="Test" xlink:href="tcm:233-190439-8" IsMandatory="false"/>
<tcm:Content>
<GeneralContent>
<Title>
<TitleText>Test</TitleText>
</Title>
<Summary>Test</Summary>
<Artwork xlink:type="simple" xmlns:xlink="http://www.w3.org/1999/xlink" xlink:title="Test" xlink:href="tcm:233-195404"/>
</GeneralContent>
<test1></test1>
</tcm:Content>
</tcm:Data>
我在xpath下面使用内容
后得到我的第一个节点var firstNode = local-name(//tcm:Data/tcm:Content/node())
如果我签入XMLSpy,我会得到我所需的结果,即上面代码中的“GeneralContent”在firefox中工作正常,但在Internet Explorer中遇到上述错误。
请说明可能是什么原因。
感谢。
最诚挚的问候, 的Manoj
答案 0 :(得分:0)
您还没有显示您在Internet Explorer中使用的XPath实现和API。通常人们使用MSXML的一个版本作为XPath实现,而MSXML公开的API只有两个方法selectSingleNode
和selectNodes
,它们确实需要将XPath表达式作为参数传入以返回节点集而不是调用local-name(...)
的字符串值。因此,使用MSXML,您无法评估返回原始值(即字符串,数字,布尔值)的XPath表达式,除非您将XPath表达式放入完整的XSLT样式表并运行它。