Advertisement
trentjs

checkbox value edits JSON object

Nov 9th, 2020 (edited)
153
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4.  
  5. <style>
  6.  
  7.     body{
  8.         background-color: #FFFFFF;
  9.         font-family: Arial, Helvetica, sans-serif;
  10.     }
  11.  
  12.     label{
  13.         display: block;
  14.     }
  15.  
  16. </style>
  17.  
  18. <script>
  19.  
  20. var formData= {
  21.     "check00":false,
  22.     "check01":false,
  23.     "check02":false,
  24. }
  25.  
  26. </script>
  27.  
  28. </head>
  29. <body>
  30.  
  31. <h2>Checkbox Values</h2>
  32.  
  33. <label>
  34.     <input type="checkbox" id="check00" name="check00" class="checkSet00" data-index="0" data-json="check00"> Check 00
  35. </label>
  36.  
  37. <label>
  38.     <input type="checkbox" id="check01" name="check01" class="checkSet00"  data-index="1" data-json="check01"> Check 01
  39. </label>
  40.  
  41. <label>
  42.     <input type="checkbox" id="check02" name="check02" class="checkSet00"  data-index="2" data-json="check02"> Check 02
  43. </label>
  44.  
  45.  
  46. <script>
  47.  
  48.     // GET CHECKBOX CLASS AS ARRAY...
  49.     var checkSetList = document.querySelectorAll(".checkSet00");
  50.  
  51.     // ADD EVENT LISTENER...
  52.     for(var i = 0; i < checkSetList.length; i++) {
  53.         checkSetList[i].addEventListener("click", doCheckClick);
  54.     }
  55.  
  56.     // CEHCKBOX EDITS TARGET JSON NODE
  57.     function doCheckClick(event){
  58.         var thisId = event.target.id;
  59.         var thisIndex = Number( event.target.getAttribute('data-index') );
  60.         var jsonTarget = event.target.getAttribute('data-json'); // GET JSON NODE
  61.         var isThisChecked = checkSetList[thisIndex].checked;    // GET CHECK BOOLEAN
  62.         formData[jsonTarget] = isThisChecked ; // PUSH BOOLEAN TO JSON
  63.         console.log(thisId + " : " + isThisChecked +  " jsonNode:" + formData[jsonTarget]  );
  64.     }
  65.  
  66.  
  67. </script>
  68.  
  69. </body>
  70. </html>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement