]> git.ardis.lu - ens2hex/commitdiff
Block inflight form re-submission from all sources
authorArdis Lu <ardisglu@gmail.com>
Thu, 9 Nov 2023 04:48:51 +0000 (20:48 -0800)
committerArdis Lu <ardisglu@gmail.com>
Thu, 9 Nov 2023 04:48:51 +0000 (20:48 -0800)
Disabling button only blocks the button, not form inputs

index.html

index 14388a43e653fc748acb9aca32929dcd6e2df45e..6c89fec0c1a23050b93de58b7d0116051ed0908f 100644 (file)
       transition: filter 150ms;
     }
 
-    #fetch:disabled {
+    [data-submitting] #fetch {
       cursor: not-allowed;
       filter: brightness(0.9);
     }
     document.querySelector('form').addEventListener('submit', async event => {
       event.preventDefault();
 
-      event.submitter.disabled = true;
+      if (event.target.hasAttribute('data-submitting')) {
+        return;
+      }
+      event.target.setAttribute('data-submitting', '');
       const spinner = document.querySelector('.inline-spinner');
       spinner.style.setProperty('display', 'inline-block');
 
         address.textContent = `0x${response.result.slice(26)}`;
       }
 
-      event.submitter.disabled = false;
       spinner.style.setProperty('display', 'none');
       document.querySelector('output#table').style.display = 'block';
+      event.target.removeAttribute('data-submitting');
     });
 
     // Download to CSV
This page took 0.048867 seconds and 4 git commands to generate.