Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/74.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 从jsonp获取json数据_Javascript_Jquery_Json - Fatal编程技术网

Javascript 从jsonp获取json数据

Javascript 从jsonp获取json数据,javascript,jquery,json,Javascript,Jquery,Json,目前,我有一个以json格式呈现数据的url 网址: 当在浏览器中运行时 ?([{"target": "test", "datapoints": [[400, 1388755180], [400, 1388755190], [400, 1388755200], [400, 1388755210], [400, 1388755220], [400, 1388755230], [400, 1388755240]]}]) 我需要一个变量中的json结果进行进一步处理。我尝试了以下方法 foo <

目前,我有一个以json格式呈现数据的url

网址:

当在浏览器中运行时

?([{"target": "test", "datapoints": [[400, 1388755180], [400, 1388755190], [400, 1388755200], [400, 1388755210], [400, 1388755220], [400, 1388755230], [400, 1388755240]]}])
我需要一个变量中的json结果进行进一步处理。我尝试了以下方法

foo
<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.6.2/jquery.min.js"></script>
<script>
$.getJSON("http://10.0.1.11/render?target=threshold(400,test)&from=-1mins&format=json&jsonp=?", function(result){
   //response data are now in the result variable
   alert(result);
});
</script>

哪里出错了?

您需要将请求解释为jsonp而不是json。jsonp类似于json,但它是包装在方法调用中的json。(见:)

您可以使用以下内容:

    <script>
    function myCallback(json_data){
        //do something with json_data!

    }
    </script>
    <script type="text/javascript" src="http://10.0.1.11/render?target=threshold(400,test)&from=-1mins&format=json&jsonp=myCallback"></script>

函数myCallback(json_数据){
//用json_数据做点什么!
}


$(文档).ready(函数(){
$.ajax({
网址:'http://10.0.1.11/render?target=threshold(400,测试)&from=-1min&format=json',
数据类型:“jsonp”,
成功:函数(json_数据){
//用json_数据做点什么!
}
}
});
})

(示例改编自链接帖子)

结果变量有什么问题?您想做什么处理?你知道它是如何工作的吗?这与JSON无关?我忘了添加源代码,所以错过了警报。添加源时,我的警报状态为[object object],您没有说明问题所在。我猜您依赖于
alert()
进行调试,从而将所有数据转换为字符串。找到你的浏览器控制台。我个人建议不要在没有明显原因的情况下手动使用jQuery来处理AJAX内容。@lvaroG.Vicario,你有什么建议?我正在尝试为长颈鹿添加制表功能。我有以下功能
var test = [{"target": "test", "datapoints": [[400, 1388755180], [400, 1388755190], [400, 1388755200], [400, 1388755210], [400, 1388755220], [400, 1388755230], [400, 1388755240]]}];
    <script>
    function myCallback(json_data){
        //do something with json_data!

    }
    </script>
    <script type="text/javascript" src="http://10.0.1.11/render?target=threshold(400,test)&from=-1mins&format=json&jsonp=myCallback"></script>
   <script>
        $(document).ready(function(){
            $.ajax({
                url: 'http://10.0.1.11/render?target=threshold(400,test)&from=-1mins&format=json',
                dataType: 'jsonp',
                success: function(json_data){
                        //do something with json_data!
                    }
                }
            });
        })
    </script>