使用 Jquery 在 AJAX 中未调用错误函数
$("#submit").click(function(){
$.ajax({
type: "POST",
url: "session.php",
data: "name=John123&location=Boston",
success: function(a, msg2){
$('#feedback').removeClass().addClass('success').text(a +' '+msg2).fadeIn('slow');
},
error: function(a, b, c){
$('#feedback').removeClass().addClass('error').text('This is' +b).fadeIn('slow');
},
我试图在 PHP 中使用以下代码来调用错误函数:
if ($_POST['name'] != "John") {
$message['error'] = true;
$message['message'] = "Hmm, please enter a subject in the subject field.";
echo json_encode($message);
}
else
{
echo $_POST['name'];
}
但我总是调用成功函数。有什么方法可以调用错误函数。
$("#submit").click(function(){
$.ajax({
type: "POST",
url: "session.php",
data: "name=John123&location=Boston",
success: function(a, msg2){
$('#feedback').removeClass().addClass('success').text(a +' '+msg2).fadeIn('slow');
},
error: function(a, b, c){
$('#feedback').removeClass().addClass('error').text('This is' +b).fadeIn('slow');
},
I'm trying to invoke error function using the following code in PHP:
if ($_POST['name'] != "John") {
$message['error'] = true;
$message['message'] = "Hmm, please enter a subject in the subject field.";
echo json_encode($message);
}
else
{
echo $_POST['name'];
}
But I'm always getting success function invoked. Is there any way i can get error function invoked.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
您需要将 HTTP 状态代码设置为
500
(或任何其他>= 400
)以指示出现错误。You need to set the HTTP status code to
500
(or anything else>= 400
) to indicate that there was an error.为什么你不做这样的事情:
并且:
仅当ajax失败时才会调用错误函数,因此你可以检查ajax是否返回错误存在或不存在。
Why won't you do something like this:
And:
The error function is invoked only when the ajax fails, so instead you can check if the ajax returned that the error exists or not.