Вам не хватает кнопки отправки, что может привести к тому, что пользователи не смогут отправить форму в некоторых браузерах.
Кроме того, было бы полезно, если бы вы опубликовали свою функцию проверки, чтобы мы могли проверить, есть ли там проблема, например, это возвращает логическое значение?
Каковы ваши результаты, если вы используете следующее:
<form ... onsubmit="alert('Foo'); return true">