0

我应该如何将此 XML 对象放入 javascript 字典中?

来自 get_objectives.php 的 XML:

<container>
  <objective>
    <id>1</id>
    <type>thing</type>
    <name>banana</name>
    <date_added>2012-05-08 21:13:01</date_added>
    <released>2012-05-08 22:47:27</released>
  </objective>
  <objective>
    <id>2</id>
    <type>thing</type>
    <name>hammock</name>
    <date_added>2012-05-08 21:13:01</date_added>
    <released>2012-05-08 22:47:27</released>
  </objective>
</container>

我正在尝试修复的 javascript 不起作用:

function updateObjectives(){
  $.post('scripts/get_objectives.php', {}, function(xml){
    $(xml).find("objective").each(function(i){
      objectives[i] = {}
      objectives[i]['id'] = $('id', xml).text()
      console.log("objectives["+i+"].id = "+objectives[i].id)
    })
  })
}

$('id', xml).text()根据下面的控制台输出,我正在尝试的调用似乎没有卡在处理 find("objective").each 调用的函数中:

objectives[0].id = 12
objectives[1].id = 12
4

1 回答 1

0

objectives[i]['id'] = $('id', this).text()成功了!

$()我的问题是教程中的模棱两可的语法;$(query, context). 而不是('this > id', xml)在完整的“xml”文件中寻找名为“id”的“this”的孩子,(我已经找到了“this”!)之所以$('id', this)有效,是因为它正在“this”中寻找“id” (“this”是标签)我希望这对某人有帮助!

于 2012-08-20T09:23:52.200 回答