Usando a API JavaScript para Campos Somente Leitura

Gostaria de controlar campos somente leitura no WPForms usando JavaScript?
O WPForms fornece um conjunto de métodos JavaScript que permitem bloquear, desbloquear e alternar campos de formulário diretamente no frontend. Essas funções são úteis se você quiser adicionar lógica personalizada, como desabilitar campos após o envio ou tornar certos campos somente leitura com base nas ações do usuário.

Adicionando seu JavaScript personalizado

Para usar esses métodos, você precisará adicionar um trecho de JavaScript personalizado ao seu site. Se você não tem certeza de como adicionar código personalizado, consulte nosso guia sobre como adicionar JavaScript personalizado para WPForms.

Certifique-se de que seu código seja executado após o carregamento do WPForms, envolvendo-o dentro do evento wpformsReady.

Métodos Disponíveis

Os seguintes métodos estão disponíveis dentro do objeto wpforms.field.

wpforms.field.lock( formId, fieldId )

Bloqueia um campo específico para que os usuários possam vê-lo, mas não editá-lo.

jQuery(document).on('wpformsReady', function() {
    wpforms.field.lock(123, 5);
});

wpforms.field.unlock( formId, fieldId )

Remove o estado somente leitura de um campo específico.

jQuery(document).on('wpformsReady', function() {
    wpforms.field.unlock(123, 5);
});

wpforms.field.toggle( formId, fieldId, state )

Alterna o estado somente leitura de um campo.

  • true — bloquear o campo
  • false — desbloquear o campo
  • ‘auto’ (padrão) — alternar automaticamente dependendo do estado atual
// With explicit state
wpforms.field.toggle(123, 5, true);

// With default behavior ('auto')
wpforms.field.toggle(123, 5);

wpforms.field.isLocked( formId, fieldId )

Verifica se um campo está atualmente bloqueado. Retorna um booleano.

jQuery(document).on('wpformsReady', function() {
    if ( wpforms.field.isLocked(123, 5) ) {
        console.log('Field is locked');
    }
});

wpforms.field.lockAll( formId )

Bloqueia todos os campos de um formulário.

jQuery(document).on('wpformsReady', function() {
    wpforms.field.lockAll(123);
});

wpforms.field.unlockAll( formId )

Desbloqueia todos os campos de um formulário.

jQuery(document).on('wpformsReady', function() {
    wpforms.field.unlockAll(123);
});

wpforms.field.readOnlyClass

Retorna o nome da classe CSS aplicado quando um campo é somente leitura.

console.log( wpforms.field.readOnlyClass );
// 'wpforms-field-readonly'

Notas

  • Substitua 123 pelo ID do seu formulário e 5 pelo ID do campo que você deseja direcionar.
  • Sempre use o evento wpformsReady para garantir que os métodos estejam disponíveis.
  • Esses métodos funcionam apenas no frontend — eles não afetam o construtor de formulários nem as entradas salvas.