2010-01-28 126 views
3

我无法解析使用jQuery的特定数据。我在网上尝试了一些教程和示例,但我似乎没有任何运气与我的数据格式化的方式。帮助解析这个数据使用jquery的XML解析

如果我有XML数据如下:

<links total="2"> 
    <link id="1"> 
     <title>whatwhat</title> 
     <url>http://google.com</url> 
     <img>1c9a871e2e074616ff45e26d8c2f7715.gif</img> 
    </link> 
    <link id="2"> 
     <title>test445</title> 
     <url>http://yahoo.com</url> 
     <img>3233c3b40f8db13274c21b6f78f04d06.gif</img> 
    </link> 
</links> 

我怎么会去提取所有的元素?

到目前为止,我尝试这样做,以获得ID,但它没有工作:

<script> 
    $(document).ready(function(){ 
    $.ajax({ 
    type: "GET", 
    url: "http://mysite.com/where/data.xml", 
    dataType: "xml", 
    success: function(xml) { 
     $(xml).find('link').each(function(){ 
    var id = $(this).attr('id'); 
    $('<div class="items" id="link_'+id+'"></div>').html('<a href="#">link</a>').appendTo('#page-wrap'); 
     }); 

} }); });

回答

0

试试这个 -

$(document).ready(function(){ 
    $.ajax({ 
    type: "GET", 
    url: "http://mysite.com/where/data.xml", 
    dataType: "xml", 
    success: parseXml 
     }); 

function parseXml (xml) { 
    $(xml).find("entry").each(function() 
    { 
    var $item = $(this); 
    var title = $item.find("title").text(); 
    var link = $item.find("url").text(); 
    var output = "<a href=\"" + link + "\" target=\"_self\">" + title + "<\/a>" + "<br />"; 

    }); 
    } 

您可能需要使用的属性玩了一下,但这将杰福工作我做类似的事情。

欢呼

1

试试这个:

success: function(xml) { 
    $(xml).find('link').attr('id').each(function(){ 
    var id = $(this).text(); 
    $('<div class="items" id="link_'+id+'"></div>').html('<a href="#">link</a>').appendTo('#page-wrap'); 
    });