10

このタイプのjsonデータを解析し、「結果」を取得して、郵便番号、州などの単一の値を取得するにはどうすればよいですか

{
    "row": [
        {
        "id": "5",
        "name": "test",
        "email": "test@test.com",
        "street": "mystreet",
        "city": "mycity",
        "state": "mystate",
        "zipcode": "123456",
        "myimage": "image.gif"}
    ]
}​
4

6 に答える 6

14

まず、 JSON.parseを使用してその文字列を解析する必要があります

var myJson = JSON.parse(the_raw_data_string);

最終的には次のようなオブジェクトになります。

var myJson = {
    "row": [
        {
        "id": "5",
        "name": "test",
        "email": "test@test.com",
        "street": "mystreet",
        "city": "mycity",
        "state": "mystate",
        "zipcode": "123456",
        "myimage": "image.gif"}
    ]
}​

アイテムへのアクセス:

myJson.row[0].id
myJson.row[0].name
myJson.row[0].street
//and so on...
于 2012-04-10T06:43:45.087 に答える
9

次のように、jsonの結果をvarに渡すことができます

var json = {
    "row": [
        {
        "id": "5",
        "name": "test",
        "email": "test@test.com",
        "street": "mystreet",
        "city": "mycity",
        "state": "mystate",
        "zipcode": "123456",
        "myimage": "image.gif"}
    ]
}​

次に、結果を別のものに取得します

var result = json.row;

その後、結果を反復処理できます

for (var i = 0; i < result.length; i++) {
    var object = result[i];
    for (property in object) {
        var value = object[property];
        alert(property + "=" + value); // This alerts "id=5",  etc..
    }
}

これがあなたを助けることを願っています

于 2012-04-10T06:46:33.420 に答える
2

繰り返しになりますが、jQuery はあなたの良き友です

データ行に複数のレコードがあるjsfiddleを使用してサンプルを投稿しました

$(document).ready(function () {
var result = {
    "row": [
        {
        "id": "5",
        "name": "test",
        "email": "test@test.com",
        "street": "mystreet",
        "city": "mycity",
        "state": "mystate",
        "zipcode": "123456",
        "myimage": "image.gif"
        },
        {
        "id": "10",
        "name": "test2",
        "email": "test2@test.com",
        "street": "mystreet2",
        "city": "mycity2",
        "state": "mystate2",
        "zipcode": "7891011",
        "myimage": "image.gif"
        }
    ]
};

var oE = $("#output");
$.each(result.row, function(index, value) {
  //- extract target value like zipCode
  oE.append($("<li></li>").text(value.zipcode));

            });
});
​

お役に立てれば。

于 2012-04-10T07:03:09.777 に答える
1

各関数でJQueryを使用できます。

$.each(myData.row, function(index,item) {
  // here you can extract the data
  alert (item.zipcode);
});
于 2012-04-10T06:43:03.183 に答える
0

を使用しJSON.parse(jsonstring)ます。次に、オブジェクト/配列を繰り返し処理します。

于 2012-04-10T06:43:29.457 に答える