Advertisement
TZinovieva

Generate Report JS Advanced

Aug 21st, 2023
672
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. function generateReport() {
  2.     let checkBoxes = document.querySelectorAll('input')
  3.  
  4.     let checked = [];
  5.  
  6.     for (let i = 0; i < checkBoxes.length; i++) {
  7.         const element = checkBoxes[i];
  8.         if (element.checked) {
  9.             checked.push(i);
  10.         }
  11.     }
  12.     let rows = document.getElementsByTagName('tr');
  13.     let rowsArr = Array.from(rows);
  14.     rowsArr.shift(); //headers
  15.  
  16.     let result = [];
  17.  
  18.     for (let row of rowsArr) {
  19.         let info = {};
  20.         for (let i of checked) {
  21.             let name = checkBoxes[i].name;
  22.             let rowInfo = row.children[i].textContent;
  23.             info[name] = rowInfo;
  24.         }
  25.         result.push(info)
  26.     }
  27.     report = JSON.stringify(result);
  28.  
  29.     let outputElement = document.getElementById('output');
  30.     outputElement.textContent = report;
  31.  
  32. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement