Le regexp sono ottime per il tipo di controllo che chiedi.
Si possono anche fare sofisticate al massimo, come mostrato nel sito delle RegExp che trovi linkato fra i link utili in un thread che parla di validazione della data (era stato citato da br1).

Per una cosa approssimata, vedi questa:
/^[0-2][0-9]\:[0-5][0-9]$/

/^ inizio della stringa
[0-2] primo carattere: tra 0 e 2
[0-9] secondo carattere (numerico)
\: duepunti
[0-5] primo carattre minuti
[0-9] carattere numerico
$/ fine stringa

per il test puoi usare il metodo .test() delle regexp, oppure il metodo .match() o .search() delle stringhe.

Ciao
Michele