当存在命名空间时,无法使用 XPath 读取节点值
Unable to read nodeValue using XPath when namespace is present
<?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 读取 Harsh 内部标签。
当命名空间不存在时,我可以使用此 javascript 行
var path = "/BO/b";
var nodes=xml.evaluate(path, xml, null, XPathResult.ANY_TYPE, null);
我应该在路径中进行哪些更改才能获取节点 b?
为了对(默认)命名空间中定义的 XML 内容使用 XPath 表达式,需要指定命名空间前缀映射。您需要某种方法在 XPath 表达式中指定要查找"http://hg.com/bo"命名空间中的所有"b"元素。
在这种情况下,您可以使用"ex"前缀并将此前缀映射到"http://hg.com/bo"命名空间 URI。这将导致以下 XPath 表达式应返回在"http://hg.com/bo"命名空间中声明的所有"b"元素:"//ex:/BO/b"。
相关文章:
- 从桌面读取python文件时高亮显示代码
- Javascript-如何读取json文件中的列并将其保存在Javascript数组中
- 使用Dnamics CRM 2011中的JavaScript读取子网格的所有记录,而不考虑活动页面
- 节点Js:How to catch a“;没有这样的文件或目录“;读取线模块出错
- TypeError:无法读取属性'推'未定义的JavaScript
- 同样,同样的错误'ahorcado.js:26未捕获类型错误:无法读取属性'beginPath'
- 未捕获的TypeError无法读取未定义的属性socialsharing
- 如何在读取XLS/XLSX本地文件时,使用IE的javascript代码启用未标记为安全的ActiveX控件
- 字符串在将其传递给另一个活动Android JavaScript时读取Null
- NodeJS-readline暂停和恢复事件发射器(逐行读取)
- 未捕获的类型错误:无法读取属性'删除'的未定义
- AngularJS指令出错-无法读取属性'编译'的未定义
- 未捕获的类型错误:无法读取属性'name'即使它存在,也无法定义
- 如何在Javascript中读取unsigned int
- 如何读取表单中的输入数据
- 通过传递图像的URL通过javascript读取/处理图像-类似于PHP中的file_get_contents
- 当存在命名空间时,无法使用 XPath 读取节点值
- Selenium使用Xpath读取隐藏web元素的文本
- Xpath不能正确读取参数
- 使用XPath读取输入的值,然后在Greasemonkey中使用