I'm trying to write a form that has required fields. When the form is filled out with the required fields missing, I'm trying to have a pop-up that tells them what is missing and then cancels the submission of the form.
At the moment I have the function below linked into the the Submit button like so: <submit onClick="validateForm()">
[html]function validateForm(){
var form_object = document.forms.helpform;
if(form_object.elements.Name.value == ''){
alert('Please enter your name.');
return false;
} else if(form_object.elements.Email.value == ''){
alert('Please enter your email address');
return false;
} else if(form_object.elements.Mobile.value == ''){
alert('Please enter your mobile phone number');
return false;
} else if(form_object.elements.Description.value == ''){
alert('Please enter a description of what you would like us to help you with.');
return false;
}
return true;
}[/html]
I have the function in the the head of the document.
The pop-ups work fine, but it doesn't cancel the form from submitting. If anyone has any suggestions, they would be most appreciated
Thanks in Advance
Last edited by tgreer; Nov 19th, 2006 at 9:17 pm. Reason: added code tags
That didn't seem to work. The code works, except that it doesn't stop the form submission process. Does anyone know of any code that would stop the current action or anything like that. I know a little bit of javascript, but I'm still on the learning curve.
That should work. You need to return either true or false, and call the function using the "return" keyword as vishesh has shown. He's missing the terminal semicolon, but it should still work. Also, you can't code both an "onsubmit" for the form AND "onclick" on the submit button. Your code would run twice. Pick a single event handler, use the "return" keyword, and make sure each code path in your function returns either "true" or "false".
Either the thread starter or a moderator has marked this thread as solved. You can most likely trust the responses and answers given. There is most likely no reason for any further responses to be posted here. If you have a related question, please start a new thread in this forum instead.
This thread is more than three months old
No one has posted to this discussion for at least three months. Please let old threads die and do not reply to them unless you feel you have something new and valuable to contribute that absolutely must be added to make the discussion complete. Otherwise, please start a new thread in this forum instead.