Javascript 在jquery中以$发出每个
好的,当我尝试使用$.each来迭代这个JSON时,我遇到了一个问题。我正在尝试访问posts信息 这是到目前为止我的代码Javascript 在jquery中以$发出每个,javascript,jquery,json,Javascript,Jquery,Json,好的,当我尝试使用$.each来迭代这个JSON时,我遇到了一个问题。我正在尝试访问posts信息 这是到目前为止我的代码 var newPosts = <? echo(getPosts($optionsArray)); ?>; var postJSON = JSON.parse(JSON.stringify(newPosts)); console.log(postJSON); alert(postJSON);
var newPosts = <? echo(getPosts($optionsArray)); ?>;
var postJSON = JSON.parse(JSON.stringify(newPosts));
console.log(postJSON);
alert(postJSON);
//Make sure the div is emptied before we append to it
$("#Posts").empty();
//Append new data
$.each(postJSON.posts, function(key, value){
alert(value);
})
var newPosts=;
var postJSON=JSON.parse(JSON.stringify(newPosts));
log(postJSON);
警报(postJSON);
//在附加到div之前,请确保该div已清空
$(“#Posts”).empty();
//附加新数据
$.each(postJSON.posts,函数(键,值){
警报(值);
})
控制台日志显示我想要的信息,但我没有从警报中获得任何信息。什么也没出现。这件事已经有一段时间了 执行console.dir(postJSON)
以确保JSON有一个名为posts
的数组
如果没有,那就是您的答案。JSON.parse=转换格式化的JSON字符串并创建一个对象…
JSON.stringify=将JavaScript对象转换为JSON字符串……
所以你要把它变成一个字符串,然后再变成一个对象。如果要正确打印字符串,请删除JSON.parse
应该是这样的:
var jString = JSON.stringify(newPosts);
alert(jString);
getPosts()必须已经转储了json文本,因此除非它对数据进行双重编码,否则整个json.parse业务是毫无意义的。为什么不仅仅是
$。每个(newPosts,…)
?第2行:解析(stringify())--为什么?如果您尝试alert(value.blog_name);比如说,马克B,是的,我都不知道。这很有帮助。谢谢你的回答。问题解决:DIt确实存在。事实上,如果我使用console.dir(postJSON.posts);它为我提供了我想要反复浏览的信息。我只是不能真正地迭代…通过它XD。谢谢你:D!