0

我正在努力使用 jQuery 来处理 Ajax/JSONP 请求。

我正在使用两个不同的域,并且进行了几次模拟的 ajax 调用。因此,我需要依赖 jQuery 自动生成的回调随机名称。如果我添加了一个jsonpCallback设置,这段代码会起作用,但同时调用会是冲突的(见这里)。

按照文档,我最终得到以下代码:

var request = $.ajax({
        url: "http://www.myUrl.com/myScript.php?preventCache="+new Date(),
        data: {GETvariableName:"value"},
        contentType: "application/json",
        dataType:'jsonp'})
    .done(function(json) {
        console.dir(json.mydata);
        })
    .fail(function(e) {
        console.log(e.message);
        });

PHP 文件提供如下服务:

callback(
    {
        "mydata":
        [
        // my JSON content...
        ]
    }
);

我收到此错误消息:

未捕获的 ReferenceError:未定义回调。

好的,我应该使用哪个函数名,因为它应该是自动生成的?

4

2 回答 2

1

php 不应定义callback使用发送的访问值$_GET['callback']

于 2013-02-15T11:42:23.950 回答
0

您应该使用查询参数 ?callback=function_name 作为服务器上的函数名称。jQuery 生成一个随机回调名称并自动将其映射到您的 .done 函数。

于 2013-02-15T11:36:38.150 回答