0

我正在尝试读取 xml 数据并通过标签名称将其分隔,以便我可以将值保存在变量中以备将来使用。但我无法读取和过滤 xml 值。我需要从给定的页面中读取每个值并分离标签值。以下是我的代码-

我需要按 CustomerID 过滤数据并找到客户的特定电子邮件。谁能帮助我。

$.get("/read_xml.asp", function(XMLresponse) {


        var xmldata=XMLresponse;

          alert("Data Loaded: " + xmldata);
         // Customers
  alert(str.length);
    var str =xmldata;
    str = str.split('<CustomerID>');
    str[1] = str[1].split('</CustomerID>');
     alert(str[1]);
});
4

3 回答 3

0

正如评论中所说,必须看到您从该 ajax 调用收到的 XML。

但是,使用 jquery 遍历文档或查找元素是显而易见的。

$(xml).find('ParentElement').each(function(){
 var id = $(this).attr('CustomerID');
 var title = $(this).find('CustomerTitle').text();
 var other = $(this).find('CustomerOther').text();
});
于 2013-08-20T11:35:59.873 回答
0

您可以使用$.parseXML然后查询文档,就像使用选择器查询 DOM 一样。

var xml = "<rss version='2.0'><channel><title>RSS Title</title></channel></rss>",
    xmlDoc = $.parseXML( xml ), //create a document from the XML string
    $xml = $( xmlDoc ), //wrap the document in a jQuery object
    $title = $xml.find( "title" ); //find every title tags

该示例来自我链接的来源,但我添加了评论。

于 2013-08-20T11:36:13.863 回答
0

可以像这样访问 XML(如果有效):

var customerID = xmldata.getElementByTagName('CustomerID')[0].nodeValue;

就像它是一个列表:

for(var i = 0;i<xmldata.getElementByTagName('customer').length;i++){
  var customer = xmldata.getElementByTagName('customer')[i];
  var customerID = customer.getElementByTagName('CustomerID')[0].nodeValue;
}
于 2013-08-20T11:35:03.587 回答