我需要一种方法来识别从PHP处理脚本返回到Ajax返回响应函数的返回值,以便在响应为正和负时我可以执行不同的操作。
我知道indexOf(似乎已被弃用)以及inArray。问题是我返回的数据不是数组,它们很简单'回声'。
我还想避免将echo语句编码为JSON。这样做似乎无关紧要。
如何识别返回的数据?
if(!mysqli_num_rows($result)){
// Insert data into database...
if($result){
echo "Thanks for Registering!";
$_SESSION['username'] = $userName;
} else {
echo "Something went wrong with your registration. Please try back later.";
}
} else {
echo 'It seems that your email has already been registered.';
// return false;
}
我考虑添加'return false'来“模仿”失败的Ajax响应,但这不起作用。
$.ajax({
url:'includes/register.php',
type:'POST',
data: formData,
success: function(data){
$("#register-form #message p").html(data);
}
}); // $.ajax
// if registration was successful, show the message and redirect
$('#register-form img').addClass('hide');
$("#register-form div + div").addClass('hide');
$("#register-form #message").removeClass('hide');
setTimeout(function(){
$('#overlay, form#register-form').fadeOut('slow');
$(".register").off();
window.location.href = 'sandbox/workshop.php';
},2000);
// if registration was not successful, do something else...
提前感谢您的回复。
答案 0 :(得分:1)
您可以返回包含$success
值true
或false
的响应数组,只需通过JS打印错误消息即可。我认为除了使用JSON之外还有其他任何方法。