【问题标题】:How to insert an XML object into an unordered list如何将 XML 对象插入无序列表
【发布时间】:2014-04-11 01:21:44
【问题描述】:

我刚刚问了一个非常相似的问题,但使用的是 Json,现在我遇到了 xml 问题。

XML:

<dinosaurs>
 <dinosaur>
  <name>Staurikosaurus</name>
  <group>Saurischia</group>
  <diet>Carnivore</diet>
  <period>Triassic</period>
 </dinosaur>
 <dinosaur>
  <name>Diplodocus</name>
  <group>Saurischia</group>
  <diet>Herbivore</diet>
  <period>Jurassic</period>
 </dinosaur>
 <dinosaur>
  <name>Stegosaurus</name>
  <group>Ornithischia</group>
  <diet>Herbivore</diet>
  <period>Jurassic</period>
 </dinosaur>
 <dinosaur>
  <name>Tyrannosaurus</name>
  <group>Saurischia</group>
  <diet>Carnivore</diet>
  <period>Cretaceous</period>
 </dinosaur>
 </dinosaurs>

我想把名字放到一个未排序的列表中

我的代码:

var inner = '';
    $(xml).find('dinosaurs').each(function(){
        $(this).find('dinosaur').each(function(){
            $(this).find("name").each(function(){
             var name = $(this).text();
             inner += "<li>"+name+"</li>";
            }
        }
    }

这绝对没有输出,有人可以告诉我哪里出错了吗? 请和谢谢你

【问题讨论】:

  • @SteveWellens 但 $(xml).find('dinosaurs').find('dinosaur').find("name").text();在一行中打印出每个名称

标签: javascript xml list parsing unordered


【解决方案1】:

试试这个:

var xml = "<dinosaurs> <dinosaur>  <name>Staurikosaurus</name>  <group>Saurischia</group>  <diet>Carnivore</diet>  <period>Triassic</period> </dinosaur> <dinosaur>  <name>Diplodocus</name>  <group>Saurischia</group>  <diet>Herbivore</diet>  <period>Jurassic</period> </dinosaur> <dinosaur>  <name>Stegosaurus</name>  <group>Ornithischia</group>  <diet>Herbivore</diet>  <period>Jurassic</period> </dinosaur> <dinosaur>  <name>Tyrannosaurus</name>  <group>Saurischia</group>  <diet>Carnivore</diet>  <period>Cretaceous</period> </dinosaur> </dinosaurs>";

var xmlDoc = $.parseXML(xml);

var inner = '';
$(xmlDoc).find('dinosaurs').each(function ()
{
    $(this).find('dinosaur').each(function ()
    {
        $(this).find("name").each(function ()
        {
            var name = $(this).text();
            inner += "<li>" + name + "</li>";
        });   
    });
});

【讨论】:

  • 谢谢你。但实际上我发现我需要添加的只是“)”来关闭“每个”功能。所以 .parseXML(xml) 实际上是不必要的。
猜你喜欢
  • 2014-05-24
  • 2023-03-20
  • 2013-02-20
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多