0

我一生都无法弄清楚为什么这不起作用?

<div class="clouds">

</div>

<div class="station">

</div>

<script type="text/javascript">
$.getJSON("http://api.geonames.org/findNearByWeatherJSON?lat=53.36652&lng=-2.29855&username=jolones&callback=?",
function(data){

          var clouds = data.weatherObservation.clouds;
          var station = data.weatherObservation.stationName;

      jQuery.(".clouds").html(clouds);
      jQuery.(".station").html(station);

      });

非常感谢

4

2 回答 2

3
jQuery . (".clouds").html(clouds);
jQuery . (".station").html(station);

你的意思是那里有那些点吗?应该

jQuery(".clouds").html(clouds);
jQuery(".station").html(station);
于 2012-05-09T15:04:45.173 回答
0

浏览器安全策略阻止您将 json ( xmlhttpReqeusts ) 发送到另一个域。不过,您应该查找 JSONP 的工作原理,如果 geonames.org 提供 jsonp 方法(jsonp 将允许您执行此操作并调用另一个域),这可能很有用。

另一种选择是创建一个远程调用 api 的本地 php 脚本。不禁止 PHP 调用远程 api,因此您可以使用 php 检索 json 结果,然后使用 javascript 从本地(在同一域上)php 程序中检索结果。

于 2012-05-09T15:06:08.680 回答