$ .ajax有两个回报:成功和错误
如果$ .ajax调用php模块,如何将响应分配给成功和错误?
例如:
如果这行代码返回错误:
$connection = mysql_connect($server,$user,$password);
我想收到ajax-error中的错误 如果php模块的执行是正确的,那么我想在ajax-sucess中收到一条消息 如果我从PHP发送echo“message”,我总是在ajax-success中收到消息,我不得不测试什么是成功,什么不是!
答案 0 :(得分:2)
错误(jqXHR,textStatus,errorThrown)
如果请求失败,则称为的函数。 ...
在服务器端,请求已成功。通常,生成的回调将是成功处理程序,而不是错误处理程序。
您应该在ajax-success处理程序中处理mysql_connect错误。
答案 1 :(得分:0)
我认为只有在 ajax 调用不起作用时,ajax错误回调才会返回错误,而不是在你的(成功'ajaxed')中有某些东西(如你的情况下是sql命令) 脚本不起作用。
但是,要从ajax成功回调函数中的数据处理sql错误,您可以解析返回的数据。我的意思是你可以在脚本输出中创建一个id ='sql_error'的div,然后读取这个div的内容。如果没有sql错误,那么你的错误div必须是零内容。
这样的事情,也许(未经测试):
$.get(url, function (data) {
var sql_error = $("#sql_error", data).html();
// or var content = $("#error", $(data)).html();
// you can then show output in the way you want, depending on sql_error
});
答案 2 :(得分:0)
试试这个....(测试过)。在服务器端的条件错误中使用它。
header('403 Forbidden', true, 403);
die('forbiden to log in. No authorization');
这将唤起错误功能。根据您的需要输入状态代码和消息。