我有一个使用XML响应请求的服务器,我想在javascript中解析它。我真的很喜欢ActionScript XML解析器,它对我来说很容易使用。我在徘徊是否有一种非常简单/直接的方法来解析我从服务器获取的XML?
理想的用法应该是:
fetchXML新的XMLParser。parser.parse访问文档。
顺便说一句,我计划使用jQuery。
一个普通的$.ajaxwith dataType: "xml"会解决这个问题,然后您可以像使用简单的网页一样使用jQuery选择器浏览内容(例如attr,示例中的函数以检索每个书节点的“ code”字段或该find函数以查找特定的节点类型) )。
$.ajax
dataType: "xml"
attr
find
例如,您可以执行以下操作以按标题查找特定的书:
$(xml).find("book[title='Cinderella']")
处理程序从那里接收xml的数据在哪里?success``$.ajax
xml
success``$.ajax
这是完整的示例:
<!DOCTYPE html> <html> <head> <title>jQuery and XML</title> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <meta name="language" content="en" /> <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script> </head> <body <div id="output"></div> <script type="text/javascript"> $(document).ready(function(){ $.ajax({ type: "GET", dataType: "xml", url: "example.xml", success: function(xml){ $(xml).find("book").each(function(){ $("#output").append($(this).attr("code") + "<br />"); }); } }); }); </script> </body> </html>
以及一个匹配的XML文件:
<?xml version="1.0" encoding="UTF-8"?> <books title="A list of books"> <book code="abcdef" /> <book code="ghijklm"> Some text contents </book> </books>