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). 完全な「xml」ファイル内で「id」という名前の「id」という名前の「this」の子を探しているのを探す代わりに('this > id', xml)(私はすでに「this」を見つけていました!)、$('id', this)「this」内で「id」を探しているため機能します。 (「これ」はタグです)これが誰かの役に立てば幸いです!

于 2012-08-20T09:23:52.200 に答える