【发布时间】:2014-07-10 17:52:44
【问题描述】:
我绞尽脑汁,我无法让它工作。
我正在使用 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"}
但是没有调用successfulAdd函数!知道为什么吗?
我已经改成
$.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,现在一切正常。
【问题讨论】:
-
查看您的控制台 - 请求的状态是什么?
-
我认为您遗漏了一些重要的代码部分。
successfulAdd :肯定存在于某个对象中,那在哪里? -
看起来您在分配
App.successfulAdd之前进行了 AJAX 调用,因此此时它没有值。请显示整个代码。 -
@tymeJV 我认为状态是200。对吧?
-
把
console.log(App.successfulAdd);放在$.ajax之前,我想你会明白我是对的。
标签: javascript php jquery json