Questão nº 53
Questão de Tecnologia da Informação - Programação · FGV DPE-RS 2023 (nº 53)
Antes do advento do HTML 5, as validações para os campos de um formulário exigiam o uso de Java Script, mas agora é possível efetuar diversas validações simples com base em atributos dos campos de entrada.
Acerca dos novos atributos de validação, é correto afirmar que:
- Aao utilizar um campo do tipo texto, o atributo max define a quantidade máxima de caracteres que pode ser digitada;
- Bpara campos do tipo date, os atributos min e max permitem definir os limites inferior e superior na escolha de datas; (alternativa correta)
- Cpara que seja exigida a escolha de um entre vários componentes do tipo radio, deve ser adicionado o atributo required em todos e utilizado o mesmo id;
- Dum campo do tipo texto exigiria o preenchimento do CEP no formato correto, com base em um atributo pattern com o valor "[0-9](5)-[0-9](3)";
- Eo atributo required, quando aplicado em um campo de texto, exige o preenchimento de um valor que não seja vazio ou espaços.
Resposta comentada
Gabarito Alternativa B
O HTML5 introduziu atributos nos campos de formulário que permitem realizar validações básicas diretamente no navegador, sem a necessidade de JavaScript. Isso simplifica o desenvolvimento e melhora a experiência do usuário.
(A) Incorreta: Para campos de texto (`type="text"`), o atributo que define a quantidade máxima de caracteres é `maxlength`, não `max`. O atributo `max` é usado para valores numéricos ou datas.
(B) Correta: Para campos do tipo data (`type="date"`), os atributos `min` e `max` são utilizados para estabelecer, respectivamente, a data mais antiga e a data mais recente que podem ser selecionadas pelo usuário.
(C) Incorreta: Para que um grupo de radio buttons seja obrigatório, o atributo `required` deve ser adicionado a apenas um dos botões do grupo, e eles devem compartilhar o mesmo atributo `name` (não `id`). O `id` deve ser único. Armadilha da banca: A confusão entre `id` e `name` é comum, e a ideia de aplicar `required` a todos parece intuitiva, mas está errada.
(D) Incorreta: O atributo `pattern` usa expressões regulares. O valor `"[0-9](5)-[0-9](3)"` está incorreto para CEP; `(5)` e `(3)` não significam "5 vezes" ou "3 vezes". O correto seria `"[0-9]{5}-[0-9]{3}"` para indicar 5 dígitos seguidos de um hífen e 3 dígitos.
(E) Incorreta: O atributo `required` em um campo de texto exige que o campo não esteja vazio (ou seja, que contenha pelo menos um caractere). No entanto, ele permite que o campo seja preenchido apenas com espaços em branco, o que pode não ser o comportamento desejado para um "valor não vazio". Para evitar apenas espaços, seria necessário JavaScript ou um `pattern` mais específico.
Fonte: FGV DPE-RS 2023 Técnico - Apoio Especializado (Programador) (Caderno Tipo 1). Reproduzida para fins de estudo.