Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

208
Visualizações
tecla charCode para teclado virtual

Tengo el siguiente código para permitir que el usuario ingrese solo números, esto funciona en el navegador. Pero cuando accedo desde el móvil, creo que no puedo obtener el código clave correcto. Entonces, ¿cuáles son los códigos clave para el mismo. No es lo mismo que la web.

 // block e char, dot, hiphen and spacebar if (event.key === 'e' || [46, 45, 32].includes(event.charCode)) { event.preventDefault(); }else{ // allow to input logic }

¿Cuáles son los códigos de caracteres para puntos, guiones y espacios que funcionarán tanto para el teclado web como para el móvil?

about 4 years ago · Juan Pablo Isaza
2 Respostas
Responde à pergunta

0

Su código está usando event.charCode, que no existe.

evento.que.charCode hace. Además no nos dices qué evento. Hay keypress, keydown, keyup, input y algunos no establecen algunos de los valores de evento esperados

Probado en Android e iOS usando browserstack

Solo uno que parece funcionar en React en Android

 export default function App() { const handleInput = (event) => { // eslint-disable-next-line event.target.value = event.target.value.replace(/[e\.\- ]/g, ""); console.log(event.target.value); }; return ( <div className="App"> <input type="number" onInput={handleInput} /> </div> ); }

Respuestas antiguas

Keydown y los nombres de código que se recomienda

 document.getElementById("positiveIntOnly").addEventListener("keydown",function(e) { // block e char, dot, hyphen and spacebar if (["KeyE", "Period", "Minus", "Space"].includes(e.code)) { event.preventDefault(); console.log(e.code); } });
 <input type="number" id="positiveIntOnly" />

O como lo menciona TJ, e.key:

 document.getElementById("positiveIntOnly").addEventListener("keydown",function(e) { // block e char, dot, hyphen and spacebar if ("e.- ".includes(e.key)) { event.preventDefault(); console.log(e.key); } });
 <input type="number" id="positiveIntOnly" />

Establezca un mínimo y un máximo y use una expresión regular para manejar el pegado

 <input type="number" id="positiveIntOnly" min="0" max="999" step="1" oninput="this.value = this.value.replace(/[e\.\- ]/g,'')" />

about 4 years ago · Juan Pablo Isaza Relatório

0

Puede simplemente usted la propiedad key :

 ["e" ,"E", "-", ".", " "].includes(e.key)

Se supone que no debes usar la propiedad charCode ya que está en desuso.

about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda