为什么jquery ajax回调函数不起作用?

前端之家收集整理的这篇文章主要介绍了为什么jquery ajax回调函数不起作用?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我在jQuery ajax中有一个简单的回调函数的问题.谷歌不会帮助,堆栈溢出也不会,所以我猜这可能不是特定的东西,而是我太无知的东西.对我来说,代码看起来完全是这样的.

所以,这里是代码

function sendMessage(message)
{
//Establish connection to PHP script
$.ajax({
    type: 'POST',url: 'action/chat/test.PHP',success: function(Feedback){

        alert(Feedback);

    }
}).error(function(){
    //Do some error handling here
});
}

在test.PHP中,它只是说

<?PHP
    echo "called";
?>

据我所知,“被叫”应该被警告 – 但不是.
我已经检查过函数sendMessage()被调用了(现在参数消息并不重要).

有人有什么想法吗?

解决方法

@H_404_18@ 更新:有一件事要注意,确保使用某种调试器,如firebug.然后,您可以转到网络选项卡,手动查看请求url和响应,以查看其是否收到200响应或内部服务器错误等.

尝试添加一个console.log(data);在你的成功功能中看看是否有任何东西被归还.

你也可以使用.always(data):

function sendMessage(message)
{
  //Establish connection to PHP script
  $.ajax({
      type: 'POST',url: 'action/chat/test.PHP'   
  }).done(function(data) { console.log(data); })
    .fail(function() { alert("error"); })
    .always(function() { alert("complete"); });
}

从文档:

弃用注意事项:jqXHR.success(),jqXHR.error()和jqXHR.complete()回调将在jQuery 1.8中弃用.要准备好最终删除代码,请改用jqXHR.done(),jqXHR.fail()和jqXHR.always().

猜你在找的jQuery相关文章