Advertisement
Kamend1

04.Students

Apr 3rd, 2025
420
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. function students () {
  2.     let submitBtn = document.getElementById('submit');
  3.     let baseUrl = `http://localhost:3030/jsonstore/collections/students`;
  4.     let tableBody = document.querySelector('#results tbody');
  5.  
  6.     submitBtn.addEventListener('click', function (e) {
  7.         e.preventDefault;
  8.         addStudent();
  9.     })
  10.  
  11.     loadStudents();
  12.    
  13.     async function addStudent () {
  14.         let firstName = document.getElementsByName('firstName')[0].value;
  15.         let lastName = document.getElementsByName('lastName')[0].value;
  16.         let facultyNumber = document.getElementsByName('facultyNumber')[0].value;
  17.         let grade = document.getElementsByName('grade')[0].value;
  18.  
  19.         let newStudent = {
  20.             firstName: firstName,
  21.             lastName: lastName,
  22.             facultyNumber: facultyNumber,
  23.             grade: grade,
  24.         }
  25.  
  26.         if (!firstName || !lastName || !facultyNumber || !grade) {
  27.             return;
  28.         }
  29.  
  30.         try {
  31.             await fetch (baseUrl, {
  32.                 method: 'post',
  33.                 headers: { 'Content-type': 'application/json' },
  34.                 body: JSON.stringify(newStudent),
  35.         })
  36.  
  37.         loadStudents();
  38.  
  39.         } catch (error) {
  40.             console.error(error);
  41.         }
  42.     }
  43.  
  44.     async function loadStudents () {
  45.         try {
  46.             let response = await fetch(baseUrl);
  47.             let studentData = await response.json();
  48.  
  49.             let students = Object.values(studentData);
  50.  
  51.             for (let student of students) {
  52.                 let newRow = document.createElement('tr');
  53.                
  54.                 let firstNameCell = document.createElement('td');
  55.                 firstNameCell.textContent = student.firstName;
  56.                 newRow.appendChild(firstNameCell);
  57.  
  58.                 let lastNameCell = document.createElement('td');
  59.                 lastNameCell.textContent = student.lastName;
  60.                 newRow.appendChild(lastNameCell);
  61.                
  62.                 let facultyNumberCell = document.createElement('td');
  63.                 facultyNumberCell.textContent = student.facultyNumber;
  64.                 newRow.appendChild(facultyNumberCell);
  65.  
  66.                 let gradeCell = document.createElement('td');
  67.                 gradeCell.textContent = student.grade;
  68.                 newRow.appendChild(gradeCell);
  69.  
  70.                 tableBody.appendChild(newRow);
  71.             }
  72.  
  73.         } catch (error) {
  74.             console.error(error);
  75.         }
  76.  
  77.     }
  78. }
  79.  
  80. students();
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement