cefet_front_end

HTML parte 6

Elementos HTML de entrada, eventos e formulários


Na última aula… (1/4)


Na última aula… (2/4)


Na última aula… (3/4)


Na última aula… (4/4)


Roteiro

  1. Elementos HTML de entrada
  2. Elementos HTML de escolha
  3. Envio de formulários e validação

Elementos HTML de entrada

Interação “livre” com usuário


Caixa de texto (p/ usuário digitar)


Rótulos (ou etiquetas)


Caixa de texto para e-mail A partir do HTML5





Interagindo via JavaScript


Elementos HTML de escolha

Pegando a escolha do usuário


Checkbox: caixinha de marcação


Radio: escolha dentro de um grupo


Select e options (lista de opções)

Formato:

  <label for="sabor">Sabor da pizza:</label>
  <select id="sabor">
    <option value="marg">Marguerita</option>
    <option value="muzza" selected>Frango</option>
  </select>

Interagindo via JavaScript (2)

  1. Verificando se um checkbox está marcado:
    let desejaInscreverEl = document.querySelector('#inscrever');
    let estaMarcado = desejaInscreverEl.checked;   // elemento.checked: true/false
    
  2. Pegando qual opção selecionada em um select:
    let saborPizzaEl = document.querySelector('#pizza');
    let sabor = saborPizzaEl.value;   // elementoSelect.value: valor da option
    
  3. Pegando qual a opção marcada em um grupo de radio:
    let corMarcadaEl = document.querySelector('[name="cor"]:checked');
    let cor = corMarcadaEl.value;   // elemento.value: valor do input
    
    • Repare o seletor: todo elemento com atributo name="cor" e que esteja no estado :checked (marcado)

Outros elementos de dados

Tipo Markup Exemplo
Seleção de arquivo <input type="file">
Campo de senha <input type="password">
Texto oculto <input type="hidden">  
Texto multi-linha <textarea></textarea>

Envio de Formulários e Validação

Enviando dados e verificando


O Elemento HTML <form>...</form>


Formulário e Botões


Botões de submissão e reset


Validação e Restrições nos Campos


Outros Tipos de Restrições

Tipo Código HTML Exemplo
Campo obrigatório <input required>
Quantidade de caracteres <input maxlength="2">
Número mínimo <input type="number" min="5">
Número máximo <input type="number" max="10">
Padrão <input pattern="[0-7]{4}">
Desabilitar <input disabled>

Eventos de formulários


Estilizando campos de formulários


Estilizando campos em diferentes estados


Referências

  1. Capítulo “A Form of Madness” do livro online diveintohtml5.info
  2. Capítulo 14 do livro
  3. Mozilla Developer Network (MDN)