javascript - 确定 XPath 以检索特定属性数据的方法
问题描述
我正在进行集成,并以 XML 格式获得响应。我需要解析它并使用 javascript 获取属性值。我试图从 id 为商品或化妆品的节点获取<ab:specific_field>
价值<ab:field_reference>
。我正在努力通过节点并提取<ab:Value>
节点值,这是我需要提取的值。
我试过了//ab:Main_Data/ab:specific_field[1]/ab:Value
,但没有运气。谁能帮我写一个正确的 XPath 来从<ab:value>
节点中提取值。
<ab:Response_Data>
<ab:MainData>
<ab:reference>....</ab:refernce>
<ab:information....<ab..info>
<ab:specific_field>
<ab:Field_Reference>
<ab:ID type="WID">123</ab:ID>
<ab:ID wd:parent_id="custom-API-Service" ab:parent_type="Integration_Document_Name" ab:type="Integration_Document_Field_Name">Commodity</ab:ID>
</ab:Field_Reference>
<ab:Value>Medicine</ab:Value>
</ab:specific_field>
<ab:specific_field>
<ab:Field_Reference>
<ab:type="WID">1234</ab:ID>
<ab:ID wd:parent_id="custom-API-Service" ab:parent_type="Integration_Document_Name" ab:type="Integration_Document_Field_Name">Cosmetic</ab:ID>
</ab:Field_Reference>
<ab:Value>Powder</ab:Value>
</ab:specific_field>
</ab:MainData>
</ab:Response_Data>
解决方案
尝试这个
//ab:maindata/ab:specific_field[.//ab:id[normalize-space()='commodity' or normalize-space()='cosmetic']]/ab:value
推荐阅读
- highcharts - Highmap colorAxis 过滤器
- hibernate - 为什么 Propagation.NOT_SUPPORTED 会更改生成的 select 语句?
- xml - 如何在 XSLT 中创建一个增加 1 个 foreach 循环的计数器,我已经嵌套了 foreach 循环
- c# - 如何使用 ASP.NET Core 中的模型验证来验证所需的查询字符串字段
- html - HTML
- javascript - 承诺未解决
- python - lsof 显示很多打开的python文件
- vue.js - 如何在VueJS中将数据从视图传递到组件
- routes - TYPO3 9.5:在语言/路由增强器之后放置一个自定义路径段
- mysql - 如何在 MySQL 中使用涉及使用多个 JOINS 和 GROUP_CONCAT 的查询的空白字段输出行?