This Javascript error happens when you have a function trying to call the form's submit() method, but you also have a button with the name "submit". This causes a conflict in Javascript, because the submit method is already bound to that button.
To solve the problem, simply change the name of the button so that name="mySubmitButton" (orwhatever you like). Your submit() call in your javascript function/method will now work. (YAY!)
After moving a client's website to a new server, several Javascript functions which used to work fine, were causing problems. One of the discrepancies is the error listed above. I assume these new errors are due to a slightly different server configuration. Regardless, the above solution works perfectly. I hope this helps you as well. Many thanks to Christo and his posting: http://www.spiration.co.uk/post/1232/Submit-is-not-a-function. I only found his post AFTER I pulled out my hair, so hopefully it will grow back soon.