I'm using Mailer PHP, after the mail is sent successfully the form is not clearing. How to modify code that make the form will clear after the message sent successfully?
and in "Your Friend's email" field box, how do I enable sending e-mail to multiple e-mail address?
Thank you very much :)
Here's HTML code
<form>
<input id="name" class="input-name" type="text" name="name" placeholder="Your name *" required />
<input id="email" class="input-email" type="text" name="email" placeholder="Your email *" required />
<input id="femail" class="input-email" type="text" name="femail" placeholder="Your Friend's email *" required />
<input id="mysubject" class="input-subject" type="text" name="mysubject" placeholder="Subject *" required />
<textarea id="comments" class="input-textarea" name="comments" placeholder="Your message *" required></textarea>
<div class="comment-active">
<span>All fields are mandatory.</span>
<input id="email_submit" class="submit-button" type="submit" value="SEND MESSAGE"/>
</div>
<div class="email_success">
<div id="reply_message" class="email_loading" ></div>
</div>
</form>
email submit javascript
<script type="text/javascript">
$("#email_submit").click(function() {
"use strict";
$('#reply_message').removeClass();
$('#reply_message').html('')
var regEx = "";
// validate Name
var name = $("input#name").val();
regEx=/^[A-Za-z .'-]+$/;
if (name == "" || name == "Name" || !regEx.test(name)) {
$("input#name").val('');
$("input#name").focus();
return true;
}
// validate Email
var email = $("input#email").val();
regEx=/^[A-Za-z0-9._%-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,4}$/;
if (email == "" || email == "Email" || !regEx.test(email)) {
$("input#email").val('');
$("input#email").focus();
return true;
}
// validate femail
var femail = $("input#femail").val();
regEx=/^[A-Za-z0-9._%-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,4}$/;
if (femail == "" || femail == "Femail" || !regEx.test(femail)) {
$("input#femail").val('');
$("input#femail").focus();
return true;
}
// validate Subject
var mysubject = $("input#mysubject").val();
regEx=/^[A-Za-z .'-]+$/;
if (mysubject == "" || mysubject == "Mysubject" || !regEx.test(mysubject)) {
$("input#mysubject").val('');
$("input#mysubject").focus();
return true;
}
// validate Comment
var comments = $("textarea#comments").val();
if (comments == "" || comments == "Comments..." || comments.length < 2) {
$("textarea#comments").val('');
$("textarea#comments").focus();
return true;
}
var dataString = 'name='+ $("input#name").val() + '&email=' + $("input#email").val() + '&femail=' + $("input#femail").val() + '&mysubject='+ $("input#mysubject").val() + '&comments=' + $("textarea#comments").val();
$('#reply_message').addClass('email_loading');
// Send form data to mailer.php
$.ajax({
type: "POST",
url: "mailer.php",
data: dataString,
success: function() {
$('#reply_message').removeClass('email_loading');
$('#reply_message').addClass('list3');
$('#reply_message').html("Mail sent sucessfully")
.hide()
.fadeIn(1500);
}
});
return false;
});
and here's PHP code
<?php if(isset($_POST['email'])) {
// EDIT THE BELOW TWO LINES AS REQUIRED
$email_to = $_POST['femail']; // required;
$email_subject = "Message From XYZ";
function errorMesg() {
// Error code can go here
echo "We are very sorry, but there were error(s) found with the form you submitted. ";
echo "<br /><br />";
echo "Please go back and fix these errors.<br /><br />";
die();
}
// validation expected data exists
if(!isset($_POST['name']) ||
!isset($_POST['email']) ||
!isset($_POST['femail']) ||
!isset($_POST['comments'])) {
errorMesg();
}
$name = $_POST['name']; // required
$email_from = $_POST['email']; // required
$mysubject = $_POST['mysubject']; // required
$comments = $_POST['comments']; // required
function clean_string($string) {
$bad = array("content-type","bcc:","to:","cc:","href");
return str_replace($bad,"",$string);
$mail_ClearAddresses();
}
$email_message .= "Name: ".clean_string($name)."\n";
$email_message .= "Email: ".clean_string($email_from)."\n";
$email_message .= "Subject: ".clean_string($mysubject)."\n";
$email_message .= "Comments: ".clean_string($comments)."\n";
// create email headers
$headers = 'From: '.$email_from."\r\n".
'Reply-To: '.$email_from."\r\n" .
'X-Mailer: PHP/' . phpversion();
@mail($email_to, $email_subject, $email_message, $headers);
?>
mail returns a bool so you can use it to test in your ajax call.
// create email headers
$headers = 'From: '.$email_from."\r\n".
'Reply-To: '.$email_from."\r\n" .
'X-Mailer: PHP/' . phpversion();
echo json_encode(array('success' => mail($email_to, $email_subject, $email_message, $headers) );
then back in your JavaScript
// Send form data to mailer.php
$.ajax({
type: "POST",
url: "mailer.php",
data: dataString,
success: function(data) {
if(data.success) {
// reset your form here
}
$('#reply_message').removeClass('email_loading');
$('#reply_message').addClass('list3');
$('#reply_message').html("Mail sent sucessfully")
.hide()
.fadeIn(1500);
}
});
要清除表单,您可以简单地重新加载页面或使用此jQuery清除所有输入元素。
$(this).closest('form').find("input[type=text], textarea").val("");
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.