Проблема в том, что у вас есть кнопка с типом = "submit", и onclick="createAccount()"
находится внутри <form/>
, браузер автоматически публикует данные и обновляет вашу страницу после нажатия этой кнопки, поэтому выполнение функция createAccount()
никогда не достигнет конца.
На HTML-теге кнопки сделайте это:
<button type ="submit" onclick="return createAccount()">Create</button>
добавить return
до createAccount()
В конце функции createAccount () добавьте return false
.
Возвращение false
при вызове метода с помощью кнопки типа отправки означает, что браузер не будет автоматически публиковать данные формы.
function createAccount(){
....
xhr.onreadystatechange = function(){
if(this.readyState == 4 && this.status == 200) {
if(this.responseText == "false"){
document.getElementById("result").innerHTML = "Error creating account!";
document.getElementById("result").style.textAlign = "center";
}
else if(this.responseText == "true"){
window.location.href = "http://localhost:8080/di24_app/html/home_page/home.html";
}
}
}
//alert("");
return false; // important
}