I'm using a simple form with a name, email and comment field to send messages from a webpage. There's a hidden title field as well which should be empty in order for the form to be submitted - spam protection if you like.
The JQuery code I am running the form through before submitting works ok, but is currently only looking for an "@" character in the email address field. What I want is a better check for a correctly formatted email address.
Here's the code.
$(function() { $('.error').hide(); $(".button").click(function() { // validate and process form here $('.error').hide(); var name = $("input#name").val(); if (name == "") { $("label#name_error").show(); $("input#name").focus(); return false; } var email = $("input#email").val(); if (!(email.indexOf('@') > 0)) { $("label#email2_error").show(); $("input#email").focus(); return false; } var message = $("textarea#message").val(); if (message == "") { $("label#message_error").show(); $("textarea#message").focus(); return false; } var title = $("input#title").val() if(title !== "") { $("input#title").focus(); return false; } var dataString = 'name='+ name + '&email=' + email + '&message=' + message; //alert (dataString);return false; $.ajax({ type: "POST", url: "sendmail.php", data: dataString, success: function() { $('#message_form').html("<div id='response'></div>"); $('#response').html("<div id='content_success_block' class='shadow_box'>") .append("<div id='success_image'><img src='assets/misc/success.png'></div>") .append("<div id='success_text'>Thanks for contacting us! We will be in touch soon.</div>") .append("</div>") .hide() .fadeIn(2500, function() { $('#response'); }); } }); return false; }); }); Any help is appreciated.