通过函数生成url后无法获取getJSON

时间:2016-03-30 09:20:08

标签: javascript json

我正在尝试通过天气API获取当前的当地天气信息。这是我的代码

<script src="//ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script>
<script>
function generateUrl() {
    var api = "http://api.openweathermap.org/data/2.5/weather?q=";
    var city = "PUNE,IN";
    var units = "&units=metric";
    var appid = "&APPID=**************************"
    var cb = "&callback=JSON_CALLBACK";
    
    return (api + city + units+ appid + cb);
}

$.getJSON(generateUrl(), function(result) {
    $.each(result, function(id, val) {
        //document.write(val);
        //document.getElementById('ModifyMe').innerHTML = '<a id ="'+id+'">'+val+'</a>';
        $("div").append(val + " ");
    });
});
</script>
<div id = 'ModifyMe'><div>

我的问题:如何从 generateUrl()生成的网址获取 JSON 文件?

1 个答案:

答案 0 :(得分:3)

   var cb = "&callback=JSON_CALLBACK";

您需要让jQuery生成回调函数名称。

var cb = "&callback=?";