0

いくつかの配列といくつかのキーと値のペアを使用して JSON 文字列を解析しようとしています。ある配列から値を取得できるようになりましたが、他の配列からも値を取得したいと考えています。配列には同じキーがありますが、2 番目の配列からデータを取得する方法がわかりません。

私のjQueryスクリプトは次のようになります

$("a").click(function () {
    var page = $(this).text();
    console.log(page);
    $.post("/services/gallery/getimage", {"path[]":[<%=path %>], "page": page}, function(data){
        var length = data.previews.length;
        console.log(length);
        var html = "";
        for(var i = 0; i < length; i++){
            $.each(data.previews[i], function (index, value) {
                html+= "<a href=\""+value+"\"><img src=\""+value+"\" alt=\""+index+"\" /></a>";
                console.log("index: "+index);
                console.log("value: "+value);
                console.log(data.heights[i].index);
            });
        }

        $("#gallery").html(html);
    });
});

これをいくつか変更してみましconsole.log(data.heights[i].index);たが、まだ使用可能な結果はありません。

コンソール出力は

1
15

index: index1
value: /some/path
undefined

index: index2
value: /some/paht
undefined 

JSON文字列は次のようになります

{
    "previews": [
        {
            "index1": "/some/path"
        },
        {
            "index2": "/some/path"
        }
    ],
    "heights": [
        {
            "index1": "67"
        },
        {
            "index2": "103"
        }
    ]
}

同じインデックスを持つ配列が増えるので、1 つの for で解析できれば素晴らしいことです。助けてくれてありがとう

編集:属性の名前は静的ではなく動的です。index1、index2、...だけでなく、何でもかまいません。

4

1 に答える 1

1

を使用する必要があるときに.index、配列からオブジェクト内のデータを検索しています。したがって、この行:heights[index]

console.log(data.heights[i].index);

なる:

console.log(data.heights[i][index]);
于 2013-10-04T06:17:22.947 に答える