[[oktatas:web:javascript|< JavaScript]] ====== JavaScript - Fájlfeltöltés ====== * **Szerző:** Sallai András * Copyright (c) Sallai András, 2022 * Licenc: [[https://creativecommons.org/licenses/by-sa/4.0/|CC Attribution-Share Alike 4.0 International]] * Web: https://szit.hu ===== FileReader konstruktor ===== ==== Weblap ====
==== Script ==== const imageupElem = document.querySelector('#imageup'); const imageBox = document.querySelector('#imageBox'); var uploadedImage = ''; imageupElem.addEventListener('change', () => { const fileReader = new FileReader(); fileReader.addEventListener('load', () => { uploadedImage = fileReader.result; imageBox.style.backgroundImage = `url(${uploadedImage})`; }); fileReader.readAsDataURL(imageupElem.files[0]); }); ==== Törlés ==== File típusú input elem tartalmának törlése: document.querySelector('#imageup').value = ''; ===== Átadás REST API számára ===== var imageupElem = document.querySelector('#imageup'); var saveButton = document.querySelector('#saveButton'); var host = 'http://localhost:8000/api/'; const saveImage = () => { const files = imageupElem.files; const formData = new FormData(); formData.append('file', files[0]); let endpoint = 'imageup'; let url = host + endpoint; fetch(url, { method: 'post', body: formData }) .then(response => response.json()) .then(result => { console.log(result); }) .catch(err => { console.log(err); }) ; } saveButton.addEventListener('click', () => { saveImage(); }) ===== Link ===== * https://developer.mozilla.org/en-US/docs/Web/API/Fetch_API/Using_Fetch (2022)