如何读取到JSON里的数据?

邓草 2015-05-20 08:15:23
baidu({"status":"0","t":"1383630502579","set_cache_time":"","data":[{"location":"广东省广州市 电信", "titlecont":"IP地址查询", "origip":"119.130.189.213", "origipquery":"119.130.189.213", "specialSearch":"1", "showlamp":"1", "showLikeShare":1, "shareImage":1, "ExtendedLocation":"", "OriginQuery":"$IP", "tplt":"ip", "resourceid":"6006", "fetchkey":"119.130.189.213", "appinfo":"", "role_id":1, "disp_type":0}]});


上面是一个URL返回的JSON的回调函数的格式。

我通过下面的代码:
function baidu(bdjson){
var bdip_addr=bdjson.data[0].location;
alert(bdip_addr);
}


上面代码,在本地直接打开html文件可以获取到地址数据,但是上传到服务器以后,却怎么也不能获取,显示错误: 'data.0' 为空或不是对象
...全文
304 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
最好解析数据前先eval数据下。应该是没获取到数据的问题。
迹- 2015-05-23
  • 打赏
  • 举报
回复
引用 6 楼 lj745280746 的回复:
你这个问题没问好,你的问题是没拿到数据 那应该把你获取数据的代码贴出来,你贴这个别人还以为是解析json出问题了
哦 我理解错了。。 你传参用字符串(单引号包围)格式,用JSON.parse(bdjson) 解析后再使用,或者用eval函数(还要加括号 自己查一下) 上面baidu函数接收的不是json 而是js对象
迹- 2015-05-23
  • 打赏
  • 举报
回复
你这个问题没问好,你的问题是没拿到数据 那应该把你获取数据的代码贴出来,你贴这个别人还以为是解析json出问题了
IT丶小青年 2015-05-22
  • 打赏
  • 举报
回复
function baidu(bdjson){
var bdip_addr=bdjson.data[0].location;
alert(bdip_addr);
}
应该为
function baidu(bdjson){
var bdip_addr=bdjson[0].location;
alert(bdip_addr);
}
没有data的数据呀
wish907 2015-05-21
  • 打赏
  • 举报
回复
var json = $.parseJSON(bdjson);
邓草 2015-05-21
  • 打赏
  • 举报
回复
引用 2 楼 mojizhang 的回复:
恩是在同一域下吧,端口号也要一致哦
不是这个原因啊。求解。。。。
mojizhang 2015-05-20
  • 打赏
  • 举报
回复
恩是在同一域下吧,端口号也要一致哦
邓草 2015-05-20
  • 打赏
  • 举报
回复
求解决!求解决!求解决!

87,921

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧