-1

尝试使用时:

$.ajax({
    type: "POST",
    url: surl,
    data: {funcToCall: "getHello",val:"Luke"},
    dataType: "jsonp",
    jsonp : "callback",
    jsonpCallback: "getHelloResponse"

}).success(function(data){
    alert(JSON.stringify(data));
}).
    error( function (data){
    alert(JSON.stringify(data));
});

我收到:

{"readyState":4,"status":200,"statusText":"success"}

但是当省略默认类型为“GET”的类型时,它工作正常!

目标 php 页面被编辑以处理 POST 和 GET。

编辑:

所以实际的问题是:为什么 ajax 帖子没有返回“Hello Luke!”的预期结果?

4

1 回答 1

0

成功和错误预期为 $.ajax 设置,它返回 jqXhr,例如您可以在其上执行 .done(),但不是成功或错误。

这是工作变体:

$.ajax({
    type: "POST",
    url: surl,
    data: {funcToCall: "getHello",val:"Luke"},
    dataType: "jsonp",
    jsonp : "callback",
    jsonpCallback: "getHelloResponse",
    success: function(data){
        alert(JSON.stringify(data));
    }
    error: function (data){
        alert(JSON.stringify(data));
    }
});

这是完成的示例,如果您可以检查执行是否正常通过或出现问题..等。

$.ajax({
    url: "file.php",
    context: document.body
}).done(function() { 
    ($this).addClass("greenBody"); // This is the context - document.body
});
于 2012-08-15T15:07:31.703 回答