首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何选择在另一个属性中具有特定值的标记的XML属性值?

如何选择在另一个属性中具有特定值的标记的XML属性值?
EN

Stack Overflow用户
提问于 2019-10-01 17:35:53
回答 1查看 78关注 0票数 1

我想要得到的OBS_VALUE值的Obs标签,有2017-Q4作为TIME_PERIOD值。

下面是我拥有的xml文件的示例:

XML

代码语言:javascript
复制
<Obs TIME_PERIOD="2018-Q1" OBS_VALUE="547289" OBS_STATUS="A" OBS_QUAL="DEF" OBS_TYPE="A"/>
<Obs TIME_PERIOD="2017-Q4" OBS_VALUE="545905" OBS_STATUS="A" OBS_QUAL="DEF" OBS_TYPE="A"/>
<Obs TIME_PERIOD="2017-Q3" OBS_VALUE="542169" OBS_STATUS="A" OBS_QUAL="DEF" OBS_TYPE="A"/>

以下是我已经取得的成就(它正在起作用)

JS

代码语言:javascript
复制
var x = Dataval.getElementsByTagName('Obs')[1].getAttributeNode("OBS_VALUE");

但我想以另一种方式选择标记:通过它的TIME_PERIOD值。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-10-01 18:25:47

使用jquery,您可以从一组元素中选择具有特定属性的元素:

代码语言:javascript
复制
var tp="2017-Q4"
var x=$('Obs[TIME_PERIOD="'+tp+'"]').attr('OBS_VALUE')
console.log(x)

它在控制台中输出: 545905

使用香草javascript,您可以通过以下方法实现相同的目标:

代码语言:javascript
复制
var tp="2017-Q4"
var obs = document.getElementsByTagName('Obs');

for (ob of obs) {
  t_p = ob.getAttribute('TIME_PERIOD');
  if (t_p === tp) {
    // output data 
    console.log(ob.getAttribute('OBS_VALUE'))
  }
}

代码语言:javascript
复制
var tp = "2017-Q4"
var x = $('Obs[TIME_PERIOD="' + tp + '"]').attr('OBS_VALUE')


console.log('jquery: '+x)


var obs = document.getElementsByTagName('Obs');

for (ob of obs) {
  t_p = ob.getAttribute('TIME_PERIOD');
  if (t_p === tp) {
    // Grab the data 
    console.log('javascript: '+ob.getAttribute('OBS_VALUE'))
  }
}
代码语言:javascript
复制
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<Obs TIME_PERIOD="2018-Q1" OBS_VALUE="547289" OBS_STATUS="A" OBS_QUAL="DEF" OBS_TYPE="A" />
<Obs TIME_PERIOD="2017-Q4" OBS_VALUE="545905" OBS_STATUS="A" OBS_QUAL="DEF" OBS_TYPE="A" />
<Obs TIME_PERIOD="2017-Q3" OBS_VALUE="542169" OBS_STATUS="A" OBS_QUAL="DEF" OBS_TYPE="A" />

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/58189779

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档