У меня есть объект 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 -> Верно/Неверно
выпадающую часть я сделаю сам. Я просто запутался в том, как перебирать этот объект. Может ли кто-нибудь привести мне пример?
Ответ 1 · рейтинг 29 · TCHdvlp
ваши объекты 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
В любом случае Антон прав. Вашей структурой будет трудно манипулировать
Ответ 2 · рейтинг 3 · LMeyer
Ваш 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);
});
Скрипт
Ответ 4 · Atif
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]
}
}