Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/460.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript $.getJSON不做任何事情_Javascript_Jquery_Json - Fatal编程技术网

Javascript $.getJSON不做任何事情

Javascript $.getJSON不做任何事情,javascript,jquery,json,Javascript,Jquery,Json,我不确定为什么,但当我在调用另一个getJSON之后调用$.getJSON时,似乎什么都没有发生。代码如下: getWeather(); function getWeather() { $.getJSON("http://where.yahooapis.com/geocode?q=" + lat + ",+" + lon + "&gflags=R&flags=J", function(data){ zipCode = data.ResultSet.Res

我不确定为什么,但当我在调用另一个getJSON之后调用$.getJSON时,似乎什么都没有发生。代码如下:

getWeather();

function getWeather() {
    $.getJSON("http://where.yahooapis.com/geocode?q=" + lat + ",+" + lon + "&gflags=R&flags=J", function(data){
        zipCode = data.ResultSet.Results[0].postal;
        WOEID = data.ResultSet.Results[0].woeid;
        getYahooWeather(WOEID);         
    });
}

function getYahooWeather(x) {
    var query = escape('select item from weather.forecast where woeid="'+x+'"');
    var url = "http://query.yahooapis.com/v1/public/yql?q=" + query + "&format=json&callback=c";
    console.log(url);

    $.getJSON(url, function(data2){
        console.log("hey");
    });
}
我的问题是,我对这些$.getJSON调用是否有问题


非常感谢

您的请求超出了当前域。您不能提出外部请求,它受到跨域策略的限制


这样的请求,而不是使用jsonp请求。下面是一个让您开始的示例。

您的请求不在当前域中。您不能提出外部请求,它受到跨域策略的限制


这样的请求,而不是使用jsonp请求。下面是一个开始。您已经指定回调应该是
c
函数,因此声明它:

function getYahooWeather(x) {
  var query = escape('select item from weather.forecast where woeid="'+x+'"');
  var url = "http://query.yahooapis.com/v1/public/yql?q=" + query + "&format=json&callback=c";
  console.log(url);

  $.getJSON(url);
}

function c(data2) {
  console.log("hey");
}

您已经指定回调函数应该是
c
函数,因此声明它:

function getYahooWeather(x) {
  var query = escape('select item from weather.forecast where woeid="'+x+'"');
  var url = "http://query.yahooapis.com/v1/public/yql?q=" + query + "&format=json&callback=c";
  console.log(url);

  $.getJSON(url);
}

function c(data2) {
  console.log("hey");
}

检查您的控制台是否存在跨域策略错误此问题是否可能重复?控制台没有说明任何内容。它应该说嗨。第一个getJSON工作正常。第二个根本不起作用,这些函数有没有被调用过?在它们的
getJSON()
之前和之后,分别为它们执行
console.log()
。在第一个函数中,控制台将显示zipCode和WOEID。在第二个函数中,它将显示url。但它并没有显示Hey检查您的控制台是否存在跨域策略错误此问题是否可能重复?控制台没有说明任何内容。它应该说嗨。第一个getJSON工作正常。第二个根本不起作用,这些函数有没有被调用过?在它们的
getJSON()
之前和之后,分别为它们执行
console.log()
。在第一个函数中,控制台将显示zipCode和WOEID。在第二个函数中,它将显示url。但它并没有显示Heygahhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh!!非常感谢你告诉我这些!哈哈哈,这就是复制和粘贴对你的作用!!非常感谢你告诉我这些!