Con l'evento onchange, dovrebbe fare il controllo ogni volta che il campo viene modificato, cioe` ogni volta che viene perso il focus dopo che c'e` stata una modifica.

Se vuoi che proprio il punto non si veda, puoi usare onkeyup: questo comporta un maggiore carico del client (cosa poco importante), ma anche una frustrazione dell'utente, che potrebbe pensare di avere la tastiera guasta.