我有以下json:
var jsonobj = {
"title" : "Testing",
"settings" : {
"mysettings" : false
},
"jsonlist": ["TestingList"],
"testjsonvals": {
"Test1": {
"name": "name1",
"description": "Test1 description"
},
"Test2": {
"name": "name2",
"description": "Test2 description"
},
"Test3": {
"name": "name3",
"description": "Test3 description"
}
}
}
如何使用javascript或jquery或angularjs在一条警报消息(例如:Test1 description, Test2 description, Test3 description
应显示在我的警报消息上)中,仅从我给定的json获取/显示Test1,Test2,Test3的描述值?请帮助我,并提前致谢。
答案 0 :(得分:2)
您应该迭代jsonobj["testjsonvals"]
(或jsonobj.testjsonvals
)个对象键并连接description
值,或将它们推入数组并join()
var jsonobj = {
"title" : "Testing",
"settings" : {
"mysettings" : false
},
"jsonlist": ["TestingList"],
"testjsonvals": {
"Test1": {
"name": "name1",
"description": "Test1 description"
},
"Test2": {
"name": "name2",
"description": "Test2 description"
},
"Test3": {
"name": "name3",
"description": "Test3 description"
}
}
}
var msg = [];
$.each(jsonobj["testjsonvals"], function(key,v){ msg.push(v["description"]) });
alert(msg.join(", "));
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
答案 1 :(得分:2)
你可以这样做
var tests=jsonobj['testjsonvals'];
alert(tests["Test1"]['description'])
答案 2 :(得分:1)
var message = jsonobj.testjsonvals.Test1.description + ', ' +
jsonobj.testjsonvals.Test2.description + ', ' +
jsonobj.testjsonvals.Test3.description;
alert(message);
答案 3 :(得分:1)
alert( jsonobj ['testjsonvals'['Test1'].description, +
jsonobj ['testjsonvals'] ['Test2'].description, +
jsonobj ['testjsonvals']['Test3'].description );
或
alert( jsonobj.testjsonvals.Test1.description, +
jsonobj.testjsonvals.Test2.description, +
jsonobj.testjsonvals.Test3.description );
如果此代码帮助您,请告诉我
答案 4 :(得分:1)
这将遍历所有testjsonvals并将它们添加到我们与空间和警报连接在一起的数组
var arr = [];
for(i in jsonobj.testjsonvals)
{
arr.push(jsonobj.testjsonvals[i].description);
}
alert(arr.join(" "));
答案 5 :(得分:1)
如果你遍历jsonobj.testjsonvals
,你应该能够建立你的字符串以满足你的需要。这样的事情可以解决问题:
var jsonobj = {
"title" : "Testing",
"settings" : {
"mysettings" : false
},
"jsonlist": ["TestingList"],
"testjsonvals": {
"Test1": {
"name": "name1",
"description": "Test1 description"
},
"Test2": {
"name": "name2",
"description": "Test2 description"
},
"Test3": {
"name": "name3",
"description": "Test3 description"
}
}
};
var tests = jsonobj.testjsonvals;
var msg = [];
for (var i in tests) {
if (tests.hasOwnProperty(i)) {
msg.push(tests[i].description);
}
}
alert(msg.join(' '));