-1

以下に示すように、3つのアレイがあります。アレイを制御することはできません。

groups_array = [ {
    "group" : "Mobile Test Region",
    "id" : "251"
}, {
    "group" : "Mobile Demo Region",
    "id" : "252"
} ]
locations_array = [ {
    "location" : "M Testing",
    "id" : "1376"
}, {
    "location" : "Trade Show Machine",
    "id" : "1403"
}, {
    "location" : "M Trailer",
    "id" : "1471"
}, {
    "location" : "Test Los Angeles",
    "id" : "1475"
} ]
pairs_array = [ {
    "location_id" : "1376",
    "group_id" : "251"
}, {
    "location_id" : "1475",
    "group_id" : "251"
}, {
    "location_id" : "1403",
    "group_id" : "252"
}, {
    "location_id" : "1471",
    "group_id" : "252"
} ]

これは、pairs_arrayをループして、グループIDに対応するlocation_idを取得するために使用したコードです。Ti.API.info(pairs_array [s] .location_id); e.rowData.groupidを使用して指定されたグループIDに基づいて2つのロケーションIDを出力します。

for (var s = 0; s < pairs_array.length; s++) {
    if (e.rowData.groupid === pairs_array[s].group_id) {
        Ti.API.info(pairs_array[s].location_id); 
    }
}

IFステートメントから取得したlocation_idのiveを使用して、文字列を比較し、場所の名前を取得しようとしています。結果を配列にプッシュし、location_arrayと結果をループして比較する必要がありますか?もしそうなら、私は数回試したので、期待した出力が得られなかったので、そのための良いコードスニペットを見たいと思います。

4

1 に答える 1

0
for (var s = 0; s < pairs_array.length; s++) {
    if (e.rowData.groupid === pairs_array[s].group_id) {
        Ti.API.info(pairs_array[s].location_id); 

        // find location name
        for(var t = 0; t < locations_array.length; t++)
        {
            if(locations_array[t].id == pairs_array[s].location_id)
            {
                location_name = locations_array[t].location;                        
            }
        }
    }
}
于 2012-04-16T18:45:57.817 に答える