No estoy seguro de lo que quieres decir.
Si te refieres a lo que escribiste, “no permitir solo números”, eso significa permitir todos los caracteres. En ese caso, no tiene que hacer nada, ya que ese es el comportamiento predeterminado de la etiqueta textarea (que posiblemente sea la etiqueta que quiere decir; no hay una etiqueta de “cuadro de texto”).
Supongo que tal vez podría significar una entrada regular de texto tipo
- ¿Cómo crecen los sistemas de reserva de hoteles en línea en 2015 en comparación con 2014?
- ¿Han fallado los widgets web del W3C?
- ¿Cuál es la mejor manera de crear una aplicación alojada en la nube desde cero?
- Adobe Photoshop: ¿Cuál es la mejor herramienta para crear prototipos de gráficos web y de aplicaciones?
- Para las nuevas empresas de Internet, ¿ya no es una opción hacer una aplicación web?
Nuevamente, todos los caracteres están permitidos por defecto.
Si quiere decir lo contrario de lo que escribe, para permitir solo números, puede establecer el tipo en número.
¿O tal vez te refieres a permitir solo caracteres de texto, pero no números en un área de texto o entrada de texto de tipo? Puede lograrlo agregando un atributo de patrón con un patrón de expresiones regulares adecuado para lo que está permitido.
En pocas palabras: no busque soluciones de JavaScript para problemas que se resuelven más fácilmente con html.
Y hacer preguntas más precisas. Si la pregunta no está clara, no aprenderá mucho de la respuesta.