我在错误:函数中收到警报返回的错误,请注意我也有不同的console.log来知道它的去向。 (在这种情况下,它会进入错误:函数)
$( document ).ready(function() {
console.log( "ready!" );
$('#register').click(function(){
$.ajax({
url: "./php/register.php",
type: 'POST',
dataType: 'json',
data: {
uname: $('#uname').val(),
usur: $('#usur').val(),
umail: $('#umail').val(),
psw: $('#psw').val(),
conf_psw: $('#conf_psw').val()
},
success:function(data){
switch(data){
case "-1":
$('#content').load("./register.html");
break;
case "0":
$('#content').load("./register.html");
break;
case "1":
$('#content').load("./login.html");
break;
}
console.log("0");
alert(data);
},
error:function(data){
console.log("-1");
alert(data);
}
});
});
/*
-1: PASSWORD NÃO COINCIDE COM A SUA CONFIRMAÇÃO
0: EMAIL JÁ EXISTE NA BASE DE DADOS
1: CONTA CRIADA COM SUCESSO
*/
});
我做了你们说的话后得到了这个 从警报:
{"readyState":0,"status":0,"statusText":"error"}
:
{readyState: 0, getResponseHeader: ƒ, getAllResponseHeaders: ƒ, setRequestHeader: ƒ, overrideMimeType: ƒ, …}
第二次编辑:
我检查了数据库,似乎它注册了值正常,我想错误:函数被调用是因为:
https://stackoverflow.com/questions/44515506/ajax-why-do-i-get-an-error-function-instead-of-success
第三次编辑:
所以我尝试在另一个浏览器中看看我是否得到相同的响应,这是Microsoft Edge的回复:
Microsoft Edge反馈:
答案 0 :(得分:2)
你的回复可能是一个js-object。 您无法在警报中显示js-object
您可以尝试使用alert(JSON.stringify(data));