Javascript jQuery解析XML,.each()

Javascript jQuery解析XML,.each(),javascript,jquery,xml,Javascript,Jquery,Xml,我正在尝试使用jquery解析xml以生成一个表。我有下面的代码。我试图让它通过标签循环,但是循环不起作用,我认为循环中没有任何东西在运行。 我80%确定我的xml是正确的,因为在查找任何标记时,如果没有.each(),它将输出所有标记,但不会分离。有人对我做错了什么有什么建议吗 $(document).ready(function(){ $("button").click(function(){ $.get("xml.xml", functi

我正在尝试使用jquery解析xml以生成一个表。我有下面的代码。我试图让它通过标签循环,但是循环不起作用,我认为循环中没有任何东西在运行。 我80%确定我的xml是正确的,因为在查找任何标记时,如果没有.each(),它将输出所有标记,但不会分离。有人对我做错了什么有什么建议吗

$(document).ready(function(){
  $("button").click(function(){
    $.get("xml.xml", function(data, status){
      alert("Data: " + data + "\nStatus: " + status);
      xmlDoc = $.parseXML( data ),
      $xml = $( xmlDoc ),
      var data2 = $xml.find("name").text());
      jQuery(xml).find("films").each(function()
                 {
                  movieId = jQuery(this).find("id").text();
                  alert(movieId);
                 });
这是我的xml文件

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<ns2:films xmlns:ns2="xml.jaxb.model">
    <filmList>
        <films>
            <id>11003</id>
            <name>THE ADVENTURES OF PRISCILLA, QUEEN OF THE DESERT</name>
            <year>1994</year>
            <director>STEPHEN ELLIOTT</director>
            <stars>TERENCE STAMP, GUY PEARCE</stars>
            <review>Whimsical and warm-hearted tale of three Australian drag queens as they drive through the Australian outback on their way to the city. Stopping in small towns to refuel Priscilla, their bus, they start to give performances to the sometimes amazed, sometimes entranced townsfolk. Stamp, Hugo Weaving and Guy Pearce (L.A.Confidential) are terrific in their roles.</review>
        </films>
        <films>
            <id>11099</id>
            <name>THE Lion QUEEN</name>
            <year>1993</year>
            <director>ROGER ALLERS &amp; ROB MINKOFF</director>
            <stars>ANIMATED</stars>
            <review>The most successful Disney film ever, and rightly so. A superbly animated tale with stirring visuals and good songs. A young lion returns to the pride to claim his title as The Lion King after discovering his father was killed by his evil uncle. Score by Sir Tim Rice and Elton John, with the Oscar winning Can You Feel The Love Tonight.</review>
        </films>
    </filmList>
</ns2:films>

11003
沙漠女王普里西拉历险记
1994
斯蒂芬·艾略特
特伦斯·斯塔姆,盖伊·皮尔斯
三个澳大利亚变装皇后驾车穿越澳大利亚内陆前往城市的奇幻而热情的故事。他们在小镇上停下来给巴士Priscilla加油,开始为那些有时惊讶,有时着迷的市民表演。斯塔姆、雨果·维文和盖伊·皮尔斯(洛杉矶机密)在他们的角色上都非常出色。
11099
狮子皇后
1993
罗杰·艾勒斯;罗布·明科夫
有生气的
这是有史以来最成功的迪斯尼电影,也是理所当然的。这是一个动听的故事,画面生动,歌曲优美。一头年轻的狮子发现自己的父亲被邪恶的叔叔杀死后,返回狮群,声称自己是狮子王。蒂姆·赖斯爵士和埃尔顿·约翰的配乐《今晚你能感受到爱吗。

正如Barmar的评论所说,您的代码将无法运行,并且看起来您可能复制粘贴了错误的内容。然而,沿着这些思路应该可以满足您的需要

代码本身是非常解释性的,尽管您可以随时询问有关它的任何问题

var xml='11003《沙漠女王普里西拉历险记》1994年斯蒂芬·埃利奥特伦斯·斯塔姆(Stephen ELLIOTTTERENCE STAMP)、盖伊·皮尔斯(GUY Pearce)讲述了三位澳大利亚变装皇后驾车穿越澳大利亚内陆前往城市的奇特而热情的故事。他们在小镇上停下来给巴士Priscilla加油,开始为那些有时惊讶,有时着迷的市民表演。斯坦普、雨果·维文和盖伊·皮尔斯(洛杉矶机密)的角色都非常出色。11099狮子皇后1993罗杰·艾勒斯&;罗布·明科夫凡是迪斯尼有史以来最成功的电影,这是理所当然的。这是一个动听的故事,画面生动,歌曲优美。一头年轻的狮子发现自己的父亲被邪恶的叔叔杀死后,返回狮群,声称自己是狮子王。蒂姆·赖斯爵士和埃尔顿·约翰的进球,获得奥斯卡奖,今晚你能感受到爱吗
var parsedDoc=$.parseXML(xml)
var parsed=$(parsedDoc)
解析。查找(“电影”)。每个(功能(i,项)
{
console.log(“电影Id:”+$(项).find(“Id”).text())
})

这一行有一个额外的
var data2=$xml.find(“name”).text()应该导致语法错误。在
之后不能有
var
。为什么要用
而不是
来分隔语句无论如何?你发布的任何代码都无法运行,因此我认为你复制的代码不正确。请发布正确的代码。
jQuery(xml)
应该是
$xml
。您的代码中没有变量
xml
。而且您不需要再次调用
jQuery()
,您在分配
$xml
时将其设置为jQuery对象。谢谢,我已经尝试了这段代码,它很有效,因此我尝试了使用$.get获取xml,这似乎是问题的根源。