<?xml version="1.0" encoding="UTF-8" ?>
<BO xmlns="http://hg.com/bo"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://hg.com/bo http://hg.com/bo.xsd">
<b>Harsh</b>
</BO>
我正在尝试使用XPath读取标记内的严酷。
当命名空间不存在时,我可以使用这个javascript行
var path = "/BO/b";
var nodes=xml.evaluate(path, xml, null, XPathResult.ANY_TYPE, null);
我应该在路径中做出哪些更改,以便我能够获取节点b?
答案 0 :(得分:0)
为了在(默认)命名空间中定义的XML内容上使用XPath表达式,您需要指定命名空间前缀映射。您需要一些方法在XPath表达式中指定您正在寻找“http://hg.com/bo”命名空间中的所有“b”元素。
在您的情况下,您可以使用“ex”前缀并将此前缀映射到“http://hg.com/bo”名称空间URI。这将导致以下XPath表达式返回“http://hg.com/bo”命名空间中声明的所有“b”元素:'// ex:/ BO / b'。