jQuery无效标签jsonp

时间:2013-01-29 09:35:43

标签: javascript jquery jsonp

我使用jQuery来获取带有ajax函数的php脚本结果。问题是php脚本在另一个域上,所以我应该使用“jsonp”作为返回的dataType,但是php脚本返回json,而不是jsonp(可能脚本不正确),我得到语法错误。我该怎么处理?我想,在ajax-function处理它并引发错误之前,我可以以某种方式获取json字符串,是否可能?

这是我的ajax功能:

$.ajax(
    {
        type: "POST",
        dataType: "jsonp",
        url: "http://www.pecom.ru/bitrix/components/pecom/calc/ajax.php",
        data: res,
        error: function (xhr, ajaxOptions, thrownError) {
            alert("error: " + xhr.status);
        },
        success: function (data) {
            alert("Data Loaded: " + data)
        }
    }
)

谢谢!

1 个答案:

答案 0 :(得分:0)

简短的回答是,你不能。

更长的一点是你必须设置某种代理:从你控制的机器在服务器端发出请求,将结果转换为适当的JSONP,然后通过AJAX连接到该服务器。 (或者,在目标服务器支持CORS的极不可能的情况下,您可以使用它而不是JSONP。)