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