简体   繁体   English

使用Javascript或Jquery解析xml标记属性?

[英]Parse xml tag attributes using Javascript or Jquery?

I have one xml. 我有一个xml。 Example XML is given below XML示例如下

<company sample="text">
<employee id="001" sex="M" age="20">Premshree Pillai</employee>
</company>

I need to get company attribute sample value 我需要获取公司属性样本值

I am trying this method 我正在尝试这种方法

<script src="http://code.jquery.com/jquery-latest.min.js" type="text/javascript"></script>
<script type="text/javascript">
window.onload = function() {
var currLoanXml = '<company sample="text"><employee id="001" sex="M" age="20">Premshree Pillai</employee></company>';
var pic = $(currLoanXml).find('company').attr('sample');
alert(pic);
};
</script>

Its Shows Undefined in my alert box. 在我的警报框中显示未定义。

But i can also alert this child tag its working 但我也可以提醒这个孩子标记其工作

var pic = $(currLoanXml).find('employee').attr('id');
alert(pic);  

What is a problem. 有什么问题 I need to get first tag attributes. 我需要获取第一个标签属性。 Please help me. 请帮我。

you need to use filter() instead of find() here because company is the root element, ie currLoanXml refers to the company element. 您需要在这里使用filter()而不是find() ,因为company是根元素,即currLoanXml是指company元素。 find will look for decedent elements only find将仅查找后继元素

var currLoanXml = '<company sample="text"><employee id="001" sex="M" age="20">Premshree Pillai</employee></company>';
var pic = $(currLoanXml).filter('company').attr('sample');
alert(pic);

Demo: Fiddle 演示: 小提琴

You go too deep 你太深了

 $(function() { var currLoanXml = '<company sample="text"><employee id="001" sex="M" age="20">Premshree Pillai</employee></company>'; var sample = $(currLoanXml).attr('sample'); console.log(sample); }); 
 <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script> 

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM