我有一个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 - >是/否
下拉部分我将自己做..我只是对如何迭代这个对象感到困惑。 any1请问我一些例子吗?
答案 0 :(得分:18)
您的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
无论如何,安东尼是对的。你的结构很难操纵
答案 1 :(得分:2)
您的JSON无效。 那怎么样:
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"}
]';
var jsonObject = $.parseJSON(json); //Only if not already an object
$.each(jsonObject, function (i, obj) {
alert(obj.DisplayName);
});
答案 2 :(得分:1)
$.each( yourArrayOfObjects, function( index, object ){
// do your magic here
});
答案 3 :(得分: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]
}
}