Home
Button Mobile Webdesign em Foco
Newsletter Webdesign em Foco
Support Webdesign em Foco
Contribuition Webdesign em Foco
Doe para a Webdesign em Foco
Suporte da Webdesign em Foco
Fechar

Vanilla Javascript - #27 Formulários III - File Preview

12/06/2019

Neste tutorial terminaremos as aulas de formulários com Javascript Vanilla. Trabalharemos com input type file.

Input file

No html vamos inserí-lo como multiple para que possamos anexar vários arquivos:

<div class="gallery"></div><br>
<input type="file" name="img[]" id="img" multiple><br>

No javascript faremos a manipulação desse input com o preview da imagem:

(function readyJS(win,doc){
    'use strict';

    let gallery=doc.querySelector('.gallery');
    let files=doc.querySelector('#img');

    function imgPreview(event){
        gallery.innerHTML='';
        let files=event.target.files;
        for (let i=0; i< files.length; i++){
            if(files[i].size > 300000){
                alert('very large image');
            }else{
                let reader=new FileReader();
                reader.onload=function (event) {
                    let urlImg=event.target.result;
                    let newImg=doc.createElement('img');
                    newImg.setAttribute("src",urlImg);
                    newImg.style='width: 100px;margin: 5px;';
                    gallery.appendChild(newImg);
                }
                reader.readAsDataURL(files[i]);
            }
        }
    }

    files.addEventListener('change',imgPreview,false);
})(window,document);

Repare que no código acima utilizamos o construtor FileReader para pegar a url local e exibir o preview. Outra coisa, logo após demonstramos uma validação pelo tamanho da imagem.

Sucesso nos códigos e na vida!

Receba as aulas da Webdesign em Foco em Seu Email
Suporte Webdesign em Foco

Posts Relacionados

Vanilla Javascript - #26 Formulários II
Continuaremos nessa vídeo-aula a parte II de formulários trazendo a manipulação de mais elementos dos nossos forms.
Saiba mais!
Vanilla Javascript - #28 EventLoop, intervalos e tempos
No tutorial de hoje trabalharemos com eventLoop, setTimeout e setInterval. O Javascript por padrão ele é síncrono, mas existem algumas formas de utilizá-lo.
Saiba mais!
Javascript
Ensinaremos durante as aulas a codificação desta importante linguagem de programação.
Saiba mais!