15

私はjsonオブジェクトを持っています

[
{"DisplayName":"Answer Number 1","Value":"Answer1","Option":"True"},
{"DisplayName":"Answer Number 1","Value":"Answer1","Option":"False"},
{"DisplayName":"Answer Number 2","Value":"Answer2","Option":"True"},
{"DisplayName":"Answer Number 2","Value":"Answer2","Option":"False"}
]

必要なのは、このオブジェクトから 2 つのドロップダウンを作成することです。

回答番号 1 -> 正誤問題

回答番号 2 -> 正誤問題

ドロップダウン部分私は自分でやります..このオブジェクトを反復処理する方法について混乱しています。例を教えてください。

4

4 に答える 4

31

あなたのjsonオブジェクトjsonObjectは配列に格納されています。行う :

$.each(jsonArray, function(index,jsonObject){
    $.each(jsonObject, function(key,val){
        console.log("key : "+key+" ; value : "+val);
    });
});

それはあなたに与えるでしょう

key : DisplayName ; value : Answer Number 1
key : Value ; value : Answer 1
key : Option ; value : true

とにかく、アンソニーは正しい。あなたの構造は操作が難しいでしょう

于 2013-06-19T08:34:46.083 に答える
1

jQuery.each()を使用する

$.each( yourArrayOfObjects, function( index, object ){
  // do your magic here
});
于 2013-06-19T08:32:55.917 に答える
0
var json = [{
    "DisplayName": "Answer Number 1",
        "Value": "Answer1",
        "Option": "True"
}, {
    "DisplayName": "Answer Number 1",
        "Value": "Answer1",
        "Option": "False"
}, {
    "DisplayName": "Answer Number 2",
        "Value": "Answer2",
        "Option": "True"
}, {
    "DisplayName": "Answer Number 2",
        "Value": "Answer2",
        "Option": "False"
}];

繰り返す

    for (i in json) {
//json[i] is your current object inside the array, {"DisplayName":"Answer Number 1","Value":"Answer1","Option":"True"}
        for (key in json[i]) {
// keys are DisplayName,  Value, Option
            alert(key);
            alert(json[i][key]); // instead of writing object.key you can also write object[key]
        }
    }
于 2013-06-19T08:34:03.030 に答える