尝试使用JavaScript访问XML响应中的元素

时间:2015-09-24 03:48:47

标签: javascript jquery xml

所以 - 我对JavaScript很陌生,所以这可能是一个愚蠢的问题 -

我正在运行POST API调用,该调用返回我需要的数据的XML文件,但我不确定如何从运行调用的站点访问XML文件中的特定标记。

我在此之前设置了我的url2:

$j.post(url2, function(data, status){
    	console.log(data);
    });

然后它返回:

#document
  <xml>
    <Meta>...</Meta>
      <Result>
        <Recipient>

          ...

哪个是完美的。但是,我不确定如何访问代码段中的元素。例如,在“收件人”中是一个名为“userTime”的标签。如果我想用JS访问该值,我希望有类似的东西:

var ut = data.getElementByTagName('userTime');

但是返回:未捕获的TypeError:data.getElementByTagName不是函数

我只是不知道我需要使用什么符号来访问XML返回中的元素。任何帮助表示赞赏!

2 个答案:

答案 0 :(得分:0)

 $j.post(url2, function(data, status){
    var result=data;
});
var data=result.find("Recipient[name='default'][type='primary']"); //XML Parent Node. 'name' is attribute & 'type' is also attribute of node.

var tagdata=data.find('child node tagname').attr(''); //Node under Parent Node, attr contain

答案 1 :(得分:0)

在此代码中。

$j.post(url2, function(data, status){

数据不是节点。使用此代码。

$.ajax({
    url:"some Url"
    ,dataType:"xml"
    ,method :"post"
}).done(function(data){    
    alert($(data).find("somequery").val());
});