Jquery ajax 解析具有不同命名数组的 json 文件
Jquery ajax parse json file with different named arrays
我刚刚完成了jquery ajax使用json的教程。我已经能够创建一个ajax页面。但要让事情变得更加复杂。我有一个包含两种数组类型的 json 文件。下面的示例(第一个对象属于人员数组,接下来的两个对象属于新闻源):
{
"people":[
{
"name":"John Constable",
"occupation":"CEO",
"location":"Toronto, Canada",
"division":"Health & Epidemics",
"profileImage":"",
"followers":123
},
{
"name":"Edward Monet",
"occupation":"Lead Developer",
"location":"Toronto, Canada",
"division":"Health & Epidemics",
"profileImage":"",
"followers":9923
}
]
},
{
"newsfeed":[
{
"Title":"Evaluations of disaster education programs for children",
"date":"Dec 10, 2015",
"tags":[
"disaster",
"tornado",
"risk management"
],
"division":"Health & Epidemics",
"Image":"",
"share":123
},
{
"Title":"UNISDR Annual Report 2014",
"date":"Dec 10, 2015",
"tags":[
"disaster",
"tornado",
"risk management"
],
"division":"Civil & Cyber Security",
"Image":"",
"share":123
}
]
}
我现在的jquery代码是
$.getJSON( "ajax/result1-F.json", function( index ) {
var jasondata = [];
$.each(index, function( i, val ) {
$container1.append( "<div><ul>" + val.profileImage + "</ul><ul><li>"+ val.name + "</li><li>" + val.occupation +"</li><li>" + val.location + "</li><li>" + val.division + "</li></ul>" + "<ul><li> <button> FOLLOW </button> </li>" + "<li>" + val.followers + "</li><li>followers</li><ul></div>");
});
});
container1
显示人员阵列的所有信息。现在,我陷入了如何同时在单独的container2
中显示新闻源的问题。
谁能指出我正确的直接?谢谢
我不明白为什么你不能做这样的事情:
var jsonObj = {
"people": [{
"name": "John Constable",
"occupation": "CEO",
"location": "Toronto, Canada",
"division": "Health & Epidemics",
"profileImage": "",
"followers": 123
}, {
"name": "Edward Monet",
"occupation": "Lead Developer",
"location": "Toronto, Canada",
"division": "Health & Epidemics",
"profileImage": "",
"followers": 9923
}]
},
{
"newsfeed": [{
"Title": "Evaluations of disaster education programs for children",
"date": "Dec 10, 2015",
"tags": ["disaster", "tornado", "risk management"],
"division": "Health & Epidemics",
"Image": "",
"share": 123
}, {
"Title": "UNISDR Annual Report 2014",
"date": "Dec 10, 2015",
"tags": ["disaster", "tornado", "risk management"],
"division": "Civil & Cyber Security",
"Image": "",
"share": 123
}]
};
var people = jsonObj.people;
var newsfeed = jsonObj.newsfeed;
people.map(function(person) {
$container1.append("<div><ul>" + person.profileImage + "</ul><ul><li>" + person.name + "</li><li>" + person.occupation + "</li><li>" + person.location + "</li><li>" + person.division + "</li></ul>" + "<ul><li> <button> FOLLOW </button> </li>" + "<li>" + person.followers + "</li><li>followers</li><ul></div>");
});
newsfeeds.map(function(news) {
//do stuff
});
您当前正在尝试遍历整个 JSON 对象。而是从对象中选择该属性并循环访问该属性。
$.each(index.people, function( i, val ) {//what you already have});
然后对新闻源执行类似操作
$.each(index.newsfeed, function( i, val ) {//printing what you have in newsfeed into $container2});
我不明白。为什么不加入这两个数组?
{
"people": [{...}, {...}],
"newsfeed": [{...}, {...}]
}
现在,使用 jasondata.people[0].name
.对于新闻源:jasondata.newsfeed[0].Title
.
相关文章:
- Javascript-如何读取json文件中的列并将其保存在Javascript数组中
- 正在尝试将JSON文件放入JS数组
- React.js如何从js文件中获取数组
- 将大数组(字符串和类型数组的混合物)存储到blob或文件中/从blob或文件检索大数组的最佳方式
- JavaScript代码,用于在浏览器中显示字节数组中的PDF文件(非base64编码)
- 如何从txt文件中获取要在javascript数组中使用的对象
- 数组在手动写入时有效,但从文本文件加载时无效
- 在将csv文件中的数据分配给数组变量时增强了d3代码
- 将javascript数组写入文件
- 从不一致的文件路径数组中获取键的值
- 如何将json文件中的数据提取到对象数组中,并在两个控制器之间共享
- 读取外部local.txt文件以将数据加载到数组中
- 将文本文件读入数组
- Grunt 可以直接从文件对象/数组或 glob 中的“src”值通过 HTTP 加载远程文件
- 将 FormData 对象放入数组中以从不同的输入文件上载文件
- 验证数组文件字段的表单提交
- 放在哪里;很多“;数据的数组/文件/其他地方,在node.JS上的JS中
- Html5文件读取器-读取本地Json数组文件并仅显示特定部分
- 未由使用 JavaScript 的 JSON 数组文件定义
- 使用JavaScript将JSON数组文件转换为图形