名前、電子メール、コメント フィールドを持つ単純なフォームを使用して、Web ページからメッセージを送信しています。フォームを送信するために空にする必要がある非表示のタイトル フィールドもあります - 必要に応じてスパム対策を行います。
送信前にフォームを実行している JQuery コードは問題なく動作しますが、現在、電子メール アドレス フィールドで "@" 文字のみを探しています。私が欲しいのは、正しい形式の電子メール アドレスをより適切にチェックすることです。
これがコードです。
$(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;
});
});
どんな助けでも大歓迎です。