0

PHP から返された json obj からデータを取得する方法を学習しようとしていますが、値を取得する方法がわかりません。私のデータは次のようになります。

[{"user_name":"herp"},{"email":"herp.derp@gmail.com"},{"yy":"yyyy"},{"mm":"mm"},{"dd":"dd"}]

私のクライアント側のスクリプトは次のようになります。

        $.ajax({
        type : 'POST',
        url : 'serverside/get_installningar.php',
        dataType : 'json',
        success : function(data) {

        }
    });

user_name などを取得するために data.user_name のようなものを入力したいと思います。しかし、これを行う方法はありますか?フォーラムを調べましたが、適切なものが見つかりません。

4

5 に答える 5

5

あなたが持っているのはオブジェクトの配列なので、それがどこにあるのかを知る必要がありますuser_name

data[0].user_name

構造の詳細については、以下を参照してください。

[
 {"user_name":"herp"},   // <-- data[0]
 {"email":"herp.derp@gmail.com"}, // <-- data[1]
 {"yy":"yyyy"},  // <-- data[2]
 {"mm":"mm"},    // <-- data[3]
 {"dd":"dd"}     // <-- data[4]
]

AndrewR指摘したように、

これは機能しますが、PHP からの JSON 形式を修正することをお勧めします。{"user_name":"herp","email":"herp.derp@gmail.com","yy":"yyyy","mm":"mm","dd":"d‌​d"}そして、彼の当初の計画が機能します。

于 2012-11-02T14:37:10.887 に答える
0

次のように使用します。

 console.log(data[0].user_name);

json のメンバーに簡単にアクセスするには、適切な形式で仮想化してみてください。これにより、配列がどこにあり、オブジェクトがどこにあるかを理解できます。

[]配列を意味します

{}オブジェクトを意味します

Chrome拡張機能をお勧めします: JsonView

たとえば、次のような JSON リクエストを使用します

タブで開くだけで、きれいに整形されます。また、左下隅には、ホバーしているアイテムにアクセスする方法が表示されます。

于 2012-11-02T14:36:33.727 に答える
0

jquery 1.4.1以降、これをネイティブに実行できます

jQuery.parseJSON

data.responseJSON でそれを行い、JS オブジェクトに変換します。

jQuery で JSON 文字列を JavaScript オブジェクトに変換する方法を参照してください。

于 2012-11-02T14:37:07.700 に答える
0

data.parseJSON();を使用します。. それはあなたが望む方法で正確にオブジェクトを返します。

于 2012-11-02T14:39:02.280 に答える
0

実際にはjsonオブジェクトではなく配列を返しています

データは次のようになっている必要があります。

{{"user_name":"herp"},{"email":"herp.derp@gmail.com"},{"yy":"yyyy"},{"mm":"mm"},{"dd":"dd"}}

適切にフォーマットされた JSON である場合は、ページの戻り値をデバッグするために Firebug をインストールしてみてください。

于 2012-11-02T14:39:17.733 に答える