我有一个像这样的xml文档
<cfxml variable="mydoc">
<?xml version="1.0" encoding="UTF-8"?>
<Feed xmlns="http://www.example.com/xs/PRR/SyndicationFeed/4.9" name="Test">
<Product id="test1" removed="false">
<Source>Widget</Source>
<ExternalId>Widget01</ExternalId>
<Name>iWidget 3G</Name>
<NumReviews>11</NumReviews>
</product>
</Feed>
</cfxml>
我想返回NumReviews
节点文本。但是:
numReviews = XmlSearch(mydoc, "/Feed/Product/NumReviews");
返回一个空数组。
numReviews = XmlSearch(myDoc, "//*[local-name()='NumReviews']");
返回节点文本。
据我所知,第一行代码是正确的,应该返回NumReviews的值。为什么它会返回一个空数组呢?
答案 0 :(得分:6)
当有名称空间时,numReviews = XmlSearch(mydoc, "/:Feed/:Product/:NumReviews");
之类的东西也应该有效。
答案 1 :(得分:4)
它可能是名称空格。我认为在涉及名称空间时需要第二种语法。我知道我必须自己使用它。
答案 2 :(得分:0)
您在第一个示例中使用反斜杠。它们应该是前沿,对吧?