Advertisement
AdamJS

index.html

Jul 11th, 2022
161
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. <style>
  2.   .error {
  3.     color: red;
  4.   }
  5. </style>
  6.  
  7. <form>
  8.   <label for="t1">t1:</label>
  9.   <input type="text" id="t1">
  10.   <button type="button" id="save">zapisz</button>
  11. </form>
  12. <pre id="response"></pre>
  13.  
  14. <script>
  15.   window.onload = load;
  16.  
  17.   function load() {
  18.     const button_save = document.querySelector('#save'),
  19.           tag_response = document.querySelector('#response');
  20.  
  21.     button_save.onclick = save;
  22.  
  23.     function save(e) {
  24.       e.preventDefault();
  25.  
  26.       const t1 = document.querySelector('#t1').value || '';
  27.       button_save.disabled = true;
  28.  
  29.       const form_data = new FormData();
  30.       form_data.append('t1', t1);
  31.  
  32.       postData(form_data);
  33.     }
  34.  
  35.     async function postData(form_data) {
  36.       try {
  37.         const response = await fetch('t1_example.php', {
  38.           method: 'POST',
  39.           body: form_data
  40.         });
  41.  
  42.         const data = await response.text();
  43.         if (data) {
  44.           tag_response.innerHTML = data;
  45.         } else {
  46.           throw 'Brak danych z serwera';
  47.         }
  48.       } catch(err) {
  49.         console.warn('postData:\n' + err);
  50.         tag_response.innerHTML = `<span class="error">${err}</span>`;
  51.       } finally {
  52.         setTimeout(() => {
  53.           button_save.disabled = false;
  54.         }, 500);
  55.       }
  56.     }
  57.   }
  58. </script>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement