2013-03-31 75 views
0

来自实例:http://papermashup.com/parse-xml-with-jquery/jQuery的XML解析读取XML一旦

功能XMLPARSER(XML)工作正常,因为它是所谓的成功。

我想写另一*功能xmlParser_selective(选择参数)*

这是否意味着我将不得不通过$阿贾克斯({类型重新读取XML: “GET”,网址:“书籍。 xml“,dataType:”xml“,success:xmlParser});? 我的目标是编写一个函数,可以根据请求解析一些选择性节点,但是我不想再次读取xml,因为我已经在文档准备就绪的情况下完成了。 我不能使它看起来work.Any想法? 函数xmlParser_selective(选择参数)??

$(document).ready(function() { 
    $.ajax({ 
     type: "GET", 
     url: "books.xml", 
     dataType: "xml", 
     success: xmlParser 
    }); 
}); 

function xmlParser(xml) { 

    $('#load').fadeOut(); 

    $(xml).find("Book").each(function() { 

     $(".main").append('<div class="book"><div class="title">' + $(this).find("Title").text() + '</div><div class="description">' + $(this).find("Description").text() + '</div><div class="date">Published ' + $(this).find("Date").text() + '</div></div>'); 
     $(".book").fadeIn(1000); 

    }); 

} 

function xmlParser_selective(selection,parameters) { 
    $(xml).find("Book").each(function() { 
    // this is not working.How do i get to $(xml) ? that is read on document ready 
    }); 
} 

回答

0

你不需要再次加载XML ..

var my_xml; 
    $.ajax({ 
     type: "GET", 
     url: "books.xml", 
     dataType: "xml", 
     success: function(data){ 
      my_xml = data; 
     } 
    }); 



function xmlParser_selective(selection,parameters) { 
    $(my_xml).find("Book").each(function() { 
    // this is not working.How do i get to $(xml) ? that is read on document ready 
    }); 
} 
+0

你能解释一下如何将这项工作? 我不想在成功时触发其他功能。 这个函数将会在页面渲染后通过下拉列表来调用? 我必须在成功内部移动我的功能吗? – django

+0

见编辑.............. –

+0

这是工作谢谢。 – django