Resumo de IA
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
123pelo ID do seu formulário e5pelo ID do campo que você deseja direcionar. - Sempre use o evento
wpformsReadypara 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.