Witam! Chcę wysłać do Django POSTem listę użytkowników. Część kodu:
document.querySelector('#makeClass').addEventListener('click', () => {
if (confirm('Czy na pewno dodałeś wszystkie osoby i chcesz stworzyć klase?')) {
const users = document.querySelectorAll('#usersList .user');
let objUsers = [];
users.forEach((e) => {
let password = generateRandomPassword();
let nameSurname = e.textContent.split(' ');
objUsers.push({
name: nameSurname[0],
surname: nameSurname[1],
password: password,
}, );
});
let xhr = new XMLHttpRequest();
xhr.open('POST', "/add-class/", true);
xhr.setRequestHeader('Content-type', 'application/x-www-form-urlencoded');
xhr.onload = function() {
if(this.status == 200){
console.log(this.responseText);
}
else {
document.querySelector('.container').innerHTML = '<span class="error">Uwaga!</span> PDF z loginami i hasłami generowany jest tylko raz. Jeżeli pobieranie nie rozpoczęło się kliknij tu: <a style="color: blue; text-decoration: underline;"id="download">POBIERZ</a>';
let validatedUsers = JSON.parse(this.responseText);
let usersPDF = new jsPDF();
let i = 10;
validatedUsers.forEach((e) => {
usersPDF.text(`Login: '${e.name} ${e.surname}' Haslo: ${e.password}`, 10, i);
i+=10;
});
function download() { usersPDF.save('users.pdf');}
download();
document.querySelector('#download').addEventListener('click', () => {
download();
});
}
}
}
xhr.send("objUsers="+JSON.stringify(objUsers)+'&codeClass='+realCodeClass);
});
Otrzymuję error: Uncaught ReferenceError: xhr is not defined. Wskazuje na linjikę ostatnią: xhr.send(...). Jaki popełniam błąd?