javascript - 未捕获的类型错误 : Cannot read property 'result' of null

标签 javascript php jquery ajax json

我尝试通过单击一个按钮来创建一个事件,该按钮将提交我提供的三条信息。我的 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 中的开发人员控制台显示以下消息:未捕获类型错误:无法读取 null 的属性“结果”。我已经尝试过返回响应的方式,但到目前为止没有任何效果。

仅供引用,一旦收到响应,就会启动额外的 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 的属性“长度”。不幸的是,我不确定在这种情况下它指的是什么。

最佳答案

return 在 PHP 中不输出任何内容,请使用 echo

$answer = array ( "result" => true, "message" => "Your event has been created");
echo json_encode($answer);

关于javascript - 未捕获的类型错误 : Cannot read property 'result' of null,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23588808/

相关文章:

javascript - 卸载事件处理程序是否保证在加载下一页之前完成执行?

jquery - 如何使用 jQuery 从 Internet Explorer 中的本地 XML 文件查询 XML 元素?

javascript - 为什么我的单选按钮不可点击?

javascript - 删除不工作的动态表在chrome中工作但在mozilla中不工作

php - 使用 javascript 更改表单操作

php - 使用 PHP PDO 匹配 MySQL 数据库中两个表的数据并提取

Javascript for 循环遍历 JSON 值

javascript - 如何更好地组织 JavaScript 中的连续替换方法?

php - mysql OR 查询与输出

php - 使用Json时,Ajax中的成功功能不起作用