2011-07-23 11 views
0

私の前のpostによると、JSONを使用してRESTfulなインターフェイスから情報を取り戻そうとしています。私はJQuery 1.5で作業しています。JSONによって返される未定義の値

私が直面する問題は、結果として戻ってくることです。未定義の値。 FireGugを使用することはできません。私のアプリケーションはPhoneGapを使用して開発されており、アプリケーションはiPhoneのシミュレータ上で実行されているからです。

[{"person":{"created_at":"2011-07-18T17:51:33Z","id":1,"name":"John","age":60,"surname":"Smith","car_id":1,"updated_at":"2011-07-18T17:51:33Z"}},{"person":{"created_at":"2011-07-18T17:51:35Z","id":1,"name":"Johnny","age":50,"surname":"Deep","car_id":2,"updated_at":"2011-07-18T17:51:35Z"}}] 

:私は、次の形式で結果を返します - 私はRESTfulなインターフェースを訪問すれば

(例は別の開発者によって作成された有効なURLである私は、ブラウザの「example.json」URLを入力します)情報のID、名前、年齢を取得し、htmlテーブルではなく配列に格納する必要があります。接続は、私は、コードを使用するすべての値を返す場合にだけ見るために:だから

var jqxhr = $.getJSON("example.json", function(person) { 
     $.each(person, function(i, person) { 
      alert(person.name); 
      alert(person.age); 
     }); 
    }) 
    .success(function() { alert("second success"); }) 
    .error(function() { alert("Cannot connect to the SWT's maps. Please try again later!"); }) 
    .complete(function() { alert("complete"); }); 

を、なぜ私は値として未定義の警告で入手できますか?

+0

あなたの質問を編集していますか? – ChristopheCVB

+0

@Christopheはい、私は入力エラーがありましたが、これは私のコードがどのように見えるかです。 – tasanoui

+0

だからファブリツィオは右です – ChristopheCVB

答えて

2

に役立ちます。このコードは動作するはずです:

var jqxhr = $.getJSON("example.json", function(person) { 
     $.each(person, function(i, item) { 
      alert(item.person.name); 
      alert(item.person.age); 
     }); 
    }) 
    .success(function() { alert("second success"); }) 
    .error(function() { alert("Cannot connect to the SWT's maps. Please try again later!"); }) 
    .complete(function() { alert("complete"); }); 
+0

@ Fabrizio非常にありがとう!確かにそれは今働いている!私はこれを手伝ってもらえればもう1つ必要ですが、配列内でどのように値を格納できるのですか(返される値の数はわかりません)? – tasanoui

+0

私の提案は、配列を宣言して$ .eachループに移入することです。返される「人」レコードの数を知る必要はありません。 –

+0

@ Fabrizioあなたのお手伝いをもう一度お願いします。それは有り難いです。 – tasanoui

-1

あなたのコードは確実ですか?試してみてください。

var jqxhr = $.getJSON("example.json", function(data) { 
$.each(data, function(i, item) { 
     alert(item.name); 
     alert(item.age); 
    }); 
} 

希望これは

+1

これはあまり正しくありません。私はそれがアイテム['人']でなければならないと思います。名前 – CiscoIPPhone

+0

申し訳ありませんがタイプミスだったので、コードを修正しました。私も@wezzyでコードを試しましたが、まだ動作していません... v私を助けてください、それを終了することが急務です。 – tasanoui

+0

@CiscolPPhone私は試していないが、どこがエラーですか?下の答えであなたと同じように見えます – wezzy

関連する問題