JSONP:无法显示数据问题

phoenix-sky 社区高级成员 T9 2015-10-09 10:41:56
测试 JSONP 跨域获取数据,发现在 console 里面可以看到远程数据,但在 HTML 里面无法显示
Console 里面错误提示:
ReferenceError: Can't find variable: getJSONP
很奇怪的一个问题

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>DEMO</title>
</head>
<body>
<div id="data" class="box"></div>
<script>
(function() {
var data = document.getElementById("data");
data.innerHTML = "placeholder";

function getJSONP(info) {
console.log(info);
console.log(info.city);
data.innerHTML = info;
}

var script = document.createElement("script");
script.src = "http://freegeoip.net/json/?callback=getJSONP";
document.body.appendChild(script);
})();
</script>
</body>
</html>
...全文
266 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
phoenix-sky 社区高级成员 T9 2015-10-09
  • 打赏
  • 举报
回复
非常感谢,我又犯低级错误了。
引用 2 楼 slwsss 的回复:
<script> function getJSONP(info) { console.log(info); console.log(info.city); data.innerHTML = info; } (function() { var data = document.getElementById("data"); data.innerHTML = "placeholder"; var script = document.createElement("script"); script.src = "http://freegeoip.net/json/?callback=getJSONP"; document.body.appendChild(script); })(); </script>
slwsss 2015-10-09
  • 打赏
  • 举报
回复
<script> function getJSONP(info) { console.log(info); console.log(info.city); data.innerHTML = info; } (function() { var data = document.getElementById("data"); data.innerHTML = "placeholder"; var script = document.createElement("script"); script.src = "http://freegeoip.net/json/?callback=getJSONP"; document.body.appendChild(script); })(); </script>
phoenix-sky 社区高级成员 T9 2015-10-09
  • 打赏
  • 举报
回复
谁遇到过这种怪异的问题?

87,884

社区成员

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

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