После того, как я добавил коды AJAX, щелкнув по меню, страницы не загружаются. Код состояния - 200. Не могу понять, почему он не работает.
Вот код JavaScript для меню. Но это не работает. Должно быть в чистом JavaScript. Нет Jquery или любой другой библиотеки.
window.onload = function () {
var menus = document.getElementsByClassName("menu");
for (var i = 0; i < menus.length; i++) {
menus[i].addEventListener("click", loadMenu);
function loadMenu(e) {
e.preventDefault();
console.log(this.href);
// INIT
var xhr = new XMLHttpRequest();
xhr.open("GET", this.href, true);
// WHEN AJAX IS RUNNING
xhr.onprogress = function () {
console.log("Progress");
};
// WHEN THE PROCESS IS COMPLETE
xhr.onload = function () {
console.log("Done");
console.log(this.status);
};
// WHEN AN ERROR IS ENCOUNTERED
xhr.onerror = function () {
console.log("Error");
};
// SEND
xhr.send();
}
}
};
Вот код заголовка
<header>
<ul>
<% if (isAuthenticated) { %>
<li><a class="menu" href="/dashboard">Dashboard</a></li>
<li><a class="menu" href="/logout">Logout</a></li>
<li><a class="menu" href="/projects">Projects</a></li>
<li><a class="menu" href="/projects/new-project">New Project</a></li>
<%}else{ %>
<li><a class="menu" href="/login">Login</a></li>
<li><a class="menu" href="/register">Register</a></li>
<% } %>
<li><a class="menu" href="/jobs">Jobs</a></li>
</ul>
</header>