Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/json/13.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
JQuery中的JSON/JSONP_Jquery_Json_Jsonp - Fatal编程技术网

JQuery中的JSON/JSONP

JQuery中的JSON/JSONP,jquery,json,jsonp,Jquery,Json,Jsonp,我试图弄明白为什么我的$.getJSON方法似乎不起作用,但是$.ajax工作得很好。首先,这里是我的getJSON调用: $.getJSON("http://localhost:1505/getServiceImageList?callback=loadImagesInSelect", loadImagesInSelect); 您可以看到,我已经尝试将回调参数直接添加到查询字符串中,也尝试了不在字符串中添加回调参数,并且添加了对js文件中定义的回调方法的引用 下面是$.ajax调用,它可以正

我试图弄明白为什么我的$.getJSON方法似乎不起作用,但是$.ajax工作得很好。首先,这里是我的getJSON调用:

$.getJSON("http://localhost:1505/getServiceImageList?callback=loadImagesInSelect", loadImagesInSelect);
您可以看到,我已经尝试将回调参数直接添加到查询字符串中,也尝试了不在字符串中添加回调参数,并且添加了对js文件中定义的回调方法的引用

下面是$.ajax调用,它可以正常工作:

function getImages() {
            $.ajax({
                type: "GET",
                url: $('#txt_registry_url').val(),
                dataType: "jsonp",
                success:loadImagesInSelect ,
                error:function (xhr, ajaxOptions, thrownError) {
                    alert(xhr.status);
                    alert(thrownError);
                }

            });
        }
在本例中,从文本框中提取的url与直接调用getJSON中的url相同。方法调用完成后,将调用successMethod,所有操作都会正常进行

虽然我对使用这两种方法中的后一种方法很在行,但这些文档让人觉得getJSON是做事情的首选速记方式

有谁能解释一下我在速记方法上遗漏了什么,以使它一切顺利


提前感谢。

据我所知,您需要使用

$.getJSON("http://localhost:1505/getServiceImageList?callback=?", loadImagesInSelect);
jQuery将负责为回调提供名称,然后将调用转发到loadImagesInSelect

我希望这会有所帮助 杰罗姆·瓦格纳

$.getJSON("http://localhost:1505/getServiceImageList?data=yes&callback=?", loadImagesInSelect);

function loadImagesInSelect(json) {
   //whatever you want on success
}
然后是服务器端的php注意:我在GET查询字符串中添加了数据

$data = getDataAsJSON($_GET['data']);
echo $_GET['callback'] . '(' . $data . ');';
getJSON需要查看回调=


我会坚持使用$.ajax

谢谢,当我将回调方法替换为?