如何使用Javascript在xml文件中以纯文本格式获取属性值?

时间:2012-08-16 19:28:59

标签: javascript ajax xml-parsing

我有以下外部托管的xml文件

<rsp stat="ok">
<feed id="" uri="">
<entry date="2012-08-15" circulation="154" hits="538" downloads="0" reach="30"/>
</feed>
</rsp>

如何使用JavaScript导入xml文档并在“entry”标记中获取“circulation”属性的值?

2 个答案:

答案 0 :(得分:3)

你可以通过Jquery ajax GET请求获取xml文件并解析它:

$.ajax({
    type: "GET",
    url: "your_xml_file.xml",
    dataType: "xml",
    success: function(xml) {
        $(xml).find('entry').each(function(){
            var circulation = $(this).attr("circulation");
            // Do whatever you want to do with circulation
        });
    }
});

不要忘记,如果xml中有多个条目标记,这将读取这些条目的所有循环属性,以便您应该知道要处理的循环量。

如果您只想拍摄第一个条目,可以使用:

$.ajax({
    type: "GET",
    url: "your_xml_file.xml",
    dataType: "xml",
    success: function(xml) {
        var circulation = $(xml).find('entry').first().attr("circulation");
    }
});

以下是我写这篇文章的资源:

http://api.jquery.com/first/

http://think2loud.com/224-reading-xml-with-jquery/

答案 1 :(得分:1)

以下是一个例子:

    if (window.XMLHttpRequest) {
      xhttp=new XMLHttpRequest();
    } else {
      xhttp=new ActiveXObject("Microsoft.XMLHTTP");
    }
    xhttp.open("GET","the name of your xml document.xml",false);
    xhttp.send();
    xmlDoc=xhttp.responseXML;
    var circulation = xmlDoc.getElementsByTagName("entry")[0].getAttribute('circulation');