JS Module
Validação Y2Valid
Validação de formulários via atributos HTML — sem configuração JS, live feedback, mensagens automáticas e suporte a regras customizadas.
1. Demo ao Vivo
Preencha o formulário para ver a validação em tempo real. O submit só passa se todos os campos estiverem válidos.
2. Regras Disponíveis
Regras são atributoss y2valid-* aplicados direto no
<input>. Podem ser combinadas livremente no mesmo campo.
| Atributo | Valida | Exemplo |
|---|---|---|
y2valid-req |
Campo obrigatório (não vazio) | y2valid-req |
y2valid-email |
Formato de e-mail válido | y2valid-email |
y2valid-url |
URL iniciada com https:// | y2valid-url |
y2valid-min |
Valor numérico mínimo | y2valid-min="18" |
y2valid-max |
Valor numérico máximo | y2valid-max="120" |
y2valid-minlen |
Mínimo de caracteres | y2valid-minlen="6" |
y2valid-maxlen |
Máximo de caracteres | y2valid-maxlen="200" |
y2valid-match |
Valor idêntico ao campo alvo | y2valid-match="#senha" |
y2valid-regex |
Expressão regular | y2valid-regex="^\d{5}-?\d{3}$" |
y2valid-custom |
Função global customizada | y2valid-custom="validarCPF" |
3. Validação no Submit
Por padrão o Y2Valid valida em tempo real (a cada digitação e blur).
Use y2valid-live="false" para validar apenas ao submeter.
4. Regra Customizada
Registre funções de validação globais com Y2Valid.addRule().
A função recebe o valor e retorna true (válido) ou uma string com o erro.
// Registra a regra "cpf"
Y2Valid.addRule('cpf', function (value) {
if (!value) return true; // campo vazio → outra regra cuida (req)
return validarCPF(value) || 'CPF inválido.';
});
5. API JavaScript
// Validar um formulário manualmente (retorna true/false)
const ok = Y2Valid.check(document.querySelector('#meuForm'));
// Limpar todos os estados visuais
Y2Valid.reset(document.querySelector('#meuForm'));
// Registrar regra customizada
Y2Valid.addRule('nome-da-regra', (value) => {
return minhaVerificacao(value) || 'Mensagem de erro.';
});
// Eventos disparados no Quick Reference
| Atributo / Classe / API | Elemento | Descrição |
|---|---|---|
y2valid |
form | Ativa a validação no formulário |
y2valid-live="false" |
form | Valida apenas no submit (padrão: live) |
.y2valid-grp |
div | Wrapper que agrupa input + mensagem de erro |
.y2valid-msg |
span | Exibe a mensagem de erro — aparece automaticamente |
.is-err — .is-ok |
input | Adicionados automaticamente ao campo após validação |
Y2Valid.check(form) |
— | Valida todos os campos e retorna true/false |
Y2Valid.reset(form) |
— | Limpa todos os estados visuais do formulário |
Y2Valid.addRule(name, fn) |
— | Registra regra customizada global |
yd:valid:valid |
evento (form) | Disparado quando o submit passa |
yd:valid:invalid |
evento (form) | Disparado quando falha — detail.errors lista os erros |