Bloquear caracteres especiais em input com JavaScript
Neste artigo você vai aprender a como bloquear caracteres especiais em input, ou seja, não permitir caracteres especiais em campos do formulário com JS

Conteúdo também disponível em vídeo:
Fala programador(a), beleza? Bora aprender mais como bloquear caracteres especiais em campos de formulário com JavaScript puro!
Formação Claude Code
Domine Claude Code do absoluto zero até o avançado
- 120 aulas
- 4 projetos
- 9h 48min
A ideia é bem simples para resolver este problema, vamos aplicar uma expressão regular nos caracteres digitados para verificar se é um caractere especial
Veja a aplicação do código:
var input = document.querySelector("#name");
input.addEventListener("keypress", function(e) {
if(!checkChar(e)) {
e.preventDefault();
}
});
function checkChar(e) {
var char = String.fromCharCode(e.keyCode);
console.log(char);
var pattern = '[a-zA-Z0-9]';
if (char.match(pattern)) {
return true;
}
}

VPS Hostinger para seu sistema
10% OFF extraVPS com SSD NVMe e backups semanais. O cupom MATHEUSHORADECODAR é aplicado automaticamente pelo link.
Ver planos com 10% OFF →Primeiramente selecionamos o input alvo, que neste exemplo tem o id de name, porém você deve adaptar ao seu projeto
Mapeamos um evento de keypress em cima deste input, para registrar tudo que é digitado no mesmo
E aí aplicamos a função contra cada um destes eventos, onde é feita uma checagem se o dígito é entre a-z maiúsculo e minúsculo ou algum número, esta é a tradução da regex na veriável pattern

Crie sistemas com IA para vender
Prompts, modelos e checklists para criar e publicar seu sistema com IA e preparar a oferta para o primeiro cliente.
Quero o e-book gratuito Receba o livro e os bônus no seu e-mail.Caso seja encontrado um valor que está dentro da regex nos é retornado true, e o evento pode seguir normalmente
Porém checamos no if se o resultado é falso, e aí prevenimos o dígito de ser inserido com o preventDefault
Desta maneira barramos todos os caracteres especiais de serem inseridos nos nossos inputs de formulário
Conclusão
Neste artigo vimos como bloquear caracteres especiais em input com JavaScript
Utilizamos uma expressão regular contra um input, resgatando cada um dos valores digitados
Caso seja um caractere especial, não deixamos o evento prosseguir, utilizando o preventDefault
Confira também nosso catálogo de cursos gratuitos, com aulas semanais no YouTube
Formações
Formação Vibe Coding
Do Prompt ao Produto: Crie Software Real com IA
- 474 aulas
- 20 projetos
- 39h 30min
Blog | Mais populares
As diferenças de var, let e const

Como redirecionar para outra página com JavaScript
Exercícios de lógica de programação JavaScript com gabarito
Pratique lógica com JavaScript resolvendo um exercício antes de abrir o gabarito. Execute o código, teste uma entrada comum e um caso de borda, como […]
