Javascript 如何在谷歌地图上获得JSON结果?

Javascript 如何在谷歌地图上获得JSON结果?,javascript,ajax,html,javascript-events,Javascript,Ajax,Html,Javascript Events,我正在使用html5和java脚本创建一个简单的应用程序。 我想展示任何一个城市最近的地方 所以我已经为一个国家设定了很长很长的时间 如果用户单击“学校”,则我希望显示所有最接近长和纬度的学校名称以及半径。 如果用户单击church,我希望显示所有最接近long和lat的教堂名称以及半径。 如果用户单击“医院”,我希望显示所有医院名称(最接近long和lat以及半径)。等等 我只有此链接和示例相关代码: https://maps.googleapis.com/maps/api/place/sea

我正在使用html5和java脚本创建一个简单的应用程序。 我想展示任何一个城市最近的地方 所以我已经为一个国家设定了很长很长的时间

如果用户单击“学校”,则我希望显示所有最接近长和纬度的学校名称以及半径。
如果用户单击church,我希望显示所有最接近long和lat的教堂名称以及半径。
如果用户单击“医院”,我希望显示所有医院名称(最接近long和lat以及半径)。等等

我只有此链接和示例相关代码:

https://maps.googleapis.com/maps/api/place/search/json?location=-33.8670522,151.1957362&radius=500&types=food&name=harbour&sensor=false&key=AIzaSyC1BIAzM34uk6SLY40s-nmXMivPJDfWgTc


$.getJSON("https://maps.googleapis.com/maps/api/place/search/json?",{
        location:"-33.8670522,151.1957362",
        radius: 500,
        types:'food',
        name: 'harbour',
        sensor: false,
        key: 'AIzaSyC1BIAzM34uk6SLY40s-nmXMivPJDfWgTc'
        format: "json"  
    },
    function(data) {
      $.each(data.results, function(i,item){
      $("<img/>").attr("src", results.name).appendTo("#images");
      if ( i == 3 ) return false;
    });
  }); 
https://maps.googleapis.com/maps/api/place/search/json?location=-33.8670522151.1957362&radius=500&types=food&name=harbor&sensor=false&key=AIzaSyC1BIAzM34uk6SLY40s nmXMivPJDfWgTc
$.getJSON(“https://maps.googleapis.com/maps/api/place/search/json?",{
位置:“-33.8670522151.1957362”,
半径:500,
种类:"食物",,
名称:"海港",,
传感器:错误,
关键字:“AIzaSyC1BIAzM34uk6SLY40s nmXMivPJDfWgTc”
格式:“json”
},
功能(数据){
$.each(data.results,function(i,item){
$("
所以我想在哪里换个地名。

最初我该怎么办?

mapsv3目前不支持jQuery get/getJSON的回调/JSONP

也就是说,如果你有耐心,试试看

要加载async,您需要执行以下操作:

function loadScript() {
  var script = document.createElement("script");
  script.type = "text/javascript";
  script.src = "http://maps.googleapis.com/maps/api/js?sensor=false&callback=initialize";
  document.body.appendChild(script);
}


如果没有,我的建议如下

使用代理:

<html>
<head>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script> 
<script>
$(document).ready(function() {
  $.getJSON("googleapijson.php?type=food",
    function(data, textStatus){
      $.each(data.results,function(i, item) {;
       $("#placenames").append(i+':'+item.vicinity+'<br/>');
    });
  });
});
</script>
</head>
<body> 
 <div id="placenames"></div>
</body>
</html>
除非有人能找到一个新的资源来展示如何使用jsonp实现这一点(我只能找到资源告诉我它不受支持),否则一种方法就是编写一个代理

这在同一台服务器上工作

HTML:

<html>
<head>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script> 
<script>
$(document).ready(function() {
  $.getJSON("googleapijson.php?type=food",
    function(data, textStatus){
      $.each(data.results,function(i, item) {;
       $("#placenames").append(i+':'+item.vicinity+'<br/>');
    });
  });
});
</script>
</head>
<body> 
 <div id="placenames"></div>
</body>
</html>

$(文档).ready(函数(){
$.getJSON(“googleapijson.php?type=food”,
功能(数据、文本状态){
$.each(data.results,function(i,item){;
$(“#地名”).append(i+':'+item.neighborary+'
); }); }); });
PHP:

<?PHP

header("Content-type: application/json");

/** note you need to grab and clean the parameters from the   
 *  get/post request and build your querystring:   
 */

$type = $_GET["type"]; // this needs to be cleaned

$URL="https://maps.googleapis.com/maps/api/place/search/json?location=-33.8670522,151.1957362&radius=500&types=".$type."&name=harbour&sensor=false&key=AIzaSyC1BIAzM34uk6SLY40s-nmXMivPJDfWgTc"

$json = file_get_contents($URL);

echo $json;
?>

请查看更新的答案。有拼写错误