En mi código tengo que permitir alfabetos numéricos y caracteres especiales. pero en mi código no acepta el espacio y los caracteres especiales excepto @. Aquí está mi código.
allowAlphaNumericSpace(e: any) { var code = 'charCode' in e ? e.charCode : e.keyCode; if ( !(code > 47 && code < 58) && // numeric (0-9) !(code >= 64 && code <= 91) && // upper alpha (AZ) !(code > 96 && code < 123) ) { // lower alpha (az) e.preventDefault(); } }charCode no es estándar, está en desuso y no está previsto para eventos keydown , puede estar disponible, pero siempre 0.
keyCode también está en desuso.
Usar e.key :
const accepted = " ,;!?"; function allowAlphaNumericSpace(e) { var code = e.key; if (isNaN(code) && code.toUpperCase() == code.toLowerCase() && !accepted.includes(code)) { e.preventDefault(); } } document.querySelector("input").addEventListener("keydown", allowAlphaNumericSpace); <input>Si es necesario aceptar algunos otros caracteres, se adapta fácilmente.