IO farei i controlli in javascript prima dell'invio del form e poi i controlli lato server dopo l'invio, in modo che non arrivino comunque dati "sporchi" o pericolosi anche se il javascript del client è disattivato.

Ho sempre pensato al controllo in javascript lato client come un "di più" che facilita solo l'utente: il programmatore DEVE essere sempre certo di cosa il suo server elabora