Usar a API JavaScript para Campos Apenas de Leitura

Gostaria de controlar campos somente de 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. Estas funções são úteis se desejar adicionar lógica personalizada, como desativar campos após o envio ou tornar certos campos somente de leitura com base nas ações do utilizador.

Adicionar o Seu JavaScript Personalizado

Para usar estes métodos, terá de adicionar um trecho de JavaScript personalizado ao seu site. Se não tiver a certeza de como adicionar código personalizado, consulte o nosso guia sobre adicionar JavaScript personalizado para WPForms.

Certifique-se de que o seu código é 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 utilizadores o possam ver, mas não editar.

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

wpforms.field.unlock( formId, fieldId )

Remove o estado somente de 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 de 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 num formulário.

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

wpforms.field.unlockAll( formId )

Desbloqueia todos os campos num 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 de 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 deseja direcionar.
  • Use sempre o evento wpformsReady para garantir que os métodos estão disponíveis.
  • Estes métodos funcionam apenas no frontend — não afetam o construtor de formulários nem as entradas guardadas.