Referência rápida

Guia Rápido de Validação de Formulários com Parsley.js

Guia de referência para Parsley.js: atributos de dados HTML5, regras de validação, API JavaScript de formulários e campos e validadores customizados.

· Publicado

O Parsley.js oferece uma excelente experiência de validação de formulários no cliente sem código repetitivo.

Inicialização

// Inicialização recomendada em JavaScript
$('#myForm').parsley({
  errorClass: 'is-invalid',
  successClass: 'is-valid'
});

Restrições padrão de validação HTML

<!-- Obrigatório -->
<input required />

<!-- Tipos e-mail e URL -->
<input type="email" />
<input type="url" />

<!-- Limites de comprimento -->
<input minlength="6" maxlength="20" />
<input data-parsley-length="[6, 20]" />

<!-- Padrões numéricos e Regex -->
<input pattern="^[A-Z0-9]+$" />
<input data-parsley-type="digits" />
<input data-parsley-type="alphanum" />

<!-- Intervalo numérico -->
<input type="number" min="1" max="100" />
<input data-parsley-range="[1, 100]" />

<!-- Limites de seleção de caixas de seleção -->
<input type="checkbox" name="hobbies" data-parsley-mincheck="2" />

<!-- Confirmação de senha -->
<input id="password" type="password" />
<input type="password" data-parsley-equalto="#password" />

API JavaScript de Formulário e Campos

Métodos do Formulário

const form = $('#myForm').parsley();

form.isValid();   // Retorna true se válido, false se inválido
form.validate();  // Executa a validação e exibe mensagens de erro
form.reset();     // Redefine o estado de validação e limpa erros
form.destroy();   // Remove os manipuladores do Parsley do formulário

Métodos do Campo

const field = $('#username').parsley();

field.isValid();
field.validate(); // Retorna array de restrições com falha

Validadores Customizados

Registrando validadores customizados globalmente:

window.Parsley.addValidator('multipleOf', {
  requirementType: 'integer',
  validateNumber(value, requirement) {
    return value % requirement === 0;
  },
  messages: {
    pt: 'Este valor deve ser um múltiplo de %s.',
    en: 'This value must be a multiple of %s.'
  }
});

Uso no HTML:

<input type="number" data-parsley-multiple-of="5" />

Referências

Temas relacionados