未捕获的类型错误:无法读取 null 的属性“result”
2014-05-11
3728
我尝试通过单击按钮来创建事件,该按钮将提交我提供的三条信息。我的 PHP 脚本应该返回 JSON 编码的响应,以表明此事件创建成功或失败。此类响应的一个示例是:
{
"result":true,
"message":"Your event has been created"
}
要返回此类响应,我的 PHP 脚本执行以下操作:
$answer = array ( "result" => true, "message" => "Your event has been created");
return json_encode($answer);
当我单击按钮在网页上创建事件时,Chrome 中的开发人员控制台显示以下消息:未捕获的 TypeError:无法读取 null 的属性“result”。我尝试过各种返回该响应的方式,但目前没有任何效果。
仅供参考,额外的 ajax 代码启动以确定收到响应后下一步要做什么,但根据错误,似乎我返回响应的方式有问题。
编辑: 处理返回响应的 Ajax 代码:
// if that response is good
if(response.result) {
$('#event-create').dialog('close');
$('#calendar').fullCalendar('refetchEvents');
// otherwise error
} else {
$('#error-message').html(response.message).dialog('open');
编辑 2: 回显它似乎解决了问题,并且没有向用户抛出任何错误。不过还有一个问题需要解决,现在已在开发人员控制台中列出。它是完全相同的错误,但它无法读取 null 的属性“length”。不幸的是,我不确定它在这种情况下指的是什么。
2个回答
return
在 PHP 中不输出任何内容,请使用
echo
$answer = array ( "result" => true, "message" => "Your event has been created");
echo json_encode($answer);
adeneo
2014-05-11
回显:
echo json_encode($answer);
Jai
2014-05-11