尝试使用时:
$.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 帖子没有返回"你好卢克!"的预期结果?
成功和错误预期为 $.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
});