It looks like you may be creating an endless loop; as your validation script calls to submit, which calls validation, which calls submit....
You should be using something like this quasi-code:
function validateit() {
if validated { return true; }
return false;
}