Advertisement
Kamend1

8.Sudomu

Mar 27th, 2025
290
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. function solve() {
  2.     let table = document.querySelector('table');
  3.     let quickCheckBtn = document.querySelector('.buttons input[type="submit"]');
  4.     let clearBtn = document.querySelector('.buttons input[type="reset"]');
  5.  
  6.     quickCheckBtn.addEventListener('click', function(e) {
  7.         e.preventDefault();
  8.         checkSudoku();
  9.     })
  10.  
  11.     clearBtn.addEventListener('click', function(e) {
  12.         e.preventDefault();
  13.         clear();
  14.     });
  15.  
  16.     function clear () {
  17.         document.getElementById('check').textContent = "";
  18.         let tableInputs = document.querySelectorAll('tbody tr td input');
  19.         for (let input of tableInputs) {
  20.             input.value = "";
  21.         }
  22.     }
  23.  
  24.     function checkSudoku () {
  25.         let rowsColsArray = [];
  26.         let tableRows = table.querySelectorAll('tr');
  27.         let col1 = '';
  28.         let col2 = '';
  29.         let col3 = '';
  30.         let isValid = true;
  31.  
  32.         for (let row of tableRows) {
  33.             let currentRow = '';
  34.             let rowValues = Array.from(row.querySelectorAll('td'));
  35.             col1 += rowValues[0].querySelector('input').value;
  36.             col2 += rowValues[1].querySelector('input').value;
  37.             col3 += rowValues[2].querySelector('input').value;
  38.             currentRow = rowValues[0].querySelector('input').value + rowValues[1].querySelector('input').value + rowValues[2].querySelector('input').value
  39.             rowsColsArray.push(currentRow);
  40.         }
  41.  
  42.         rowsColsArray.push(col1);
  43.         rowsColsArray.push(col2);
  44.         rowsColsArray.push(col3);
  45.  
  46.         for (let element of rowsColsArray) {
  47.             if (!element.includes('1') || !element.includes('2') || !element.includes('3')) {
  48.                 isValid = false;
  49.                 break;
  50.             }
  51.         }
  52.  
  53.         if (isValid) {
  54.             table.style.border = '2px solid green';
  55.             document.getElementById('check').textContent = "Success!";
  56.         } else {
  57.             table.style.border = '2px solid red';
  58.             document.getElementById('check').textContent = "Keep trying ...";
  59.         }
  60.     }
  61. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement