[英]jQuery success POST php not activate
我正在绞尽脑汁,但无法使其正常工作。
我正在使用jQuery来调用PHP页面:
$.ajax({
type: "POST",
url: postUrl,
data: formData,
async : false,
contentType: 'application/json; charset=utf-8',
dataType: 'json',
success: App.successfulAdd,
error: App.errorAdd
});
successfulAdd : function(result) {
alert("Success!");
},
PHP:
echo json_encode(array('msg' => 'failed'));
萤火虫展示:
{"msg":"failed"}
但是成功调用函数没有被调用! 知道为什么吗?
我已更改为
$.ajax({
type: "POST",
url: postUrl,
data: formData,
async : false,
contentType: 'application/json; charset=utf-8',
dataType: 'json',
success: function (data) {
alert("Success!");
},
error: function (data) {
alert("Error!");
}
});
但是还是错误! 被陈列。
更新资料
终于我找到了! 使用Notepad ++,并作为UTF8编码。 更改为不带BOM的UTF8,现在一切正常。
尝试更改为:
success: function(result) {
App.successfulAdd(result);
},
error: function(result) {
App.errorAdd(result);
}
这将在响应到达时(而不是在发送请求时)评估属性。 我怀疑您在构建App
对象时正在发送请求,而这些属性尚未分配。
我想我找到了问题的原因:jQuery版本。
版本:1.11.1、1.11.0、1.10.2、1.10.1、1.10.0、1.9.1、1.9.0不起作用。 版本1.8.3可以使用。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.