Ajax评论Form_Return PHP响应

时间:2012-02-19 22:28:31

标签: php ajax forms contact

我正在基于jquery验证插件(http://docs.jquery.com/Plugins/Validation)创建一个评论表单。我正在尝试将jquery验证插件与我的表单集成,但我很难通过ajax将php响应消息显示在表单下。

目前,'print'ed php消息“表单已成功提交”显示为浏览器弹出窗口。如何配置AJAX / JS以在html表单下方显示php消息“表单已成功提交”?

 <script>
 $(document).ready(function(){
 $("#commentForm").submit(function(){
    if($("#commentForm").validate()){
        $.ajax({
            type: 'POST',
            url: 'process.php',
            data: $(this).serialize(),
            success: function(returnedData){
                alert(returnedData);
            }
        });
    }
    return false; }); });
  </script>

<form class="cmxform" id="commentForm" method="POST" action="process.php">
   <label for="cname">Name</label>
   <input id="cname" name="name" size="25" class="required" minlength="2" />
   <label for="cemail">E-Mail</label>
   <input id="cemail" name="email" size="25"  class="required email" />
   <label for="curl">URL</label>
   <input id="curl" name="url" size="25"  class="url" value="" />
   <label for="ccomment">Your comment</label>
   <textarea id="ccomment" name="comment" cols="22"  class="required"></textarea>
<input class="submit" type="submit" value="Submit"/>

而且php也非常标准:

<?php

$to      = 'sdfsadfssfasd@gmail.com';
$subject = 'the subject';
$message = 'hello';
$headers = 'From: webmaster@example.com';

mail($to, $subject, $message, $headers);

print "Form submitted successfully: <br>Your name is <b>".$_POST['cname']."</b> and your email is <b>".$_POST['email']."</b><br>";
?>

感谢您的帮助。

1 个答案:

答案 0 :(得分:1)

使用jQuery .append()方法代替alert,就是这样!这会将您要发送给客户端的text / html附加到表单中。如果要在顶部显示消息,可以使用prepend()

success: function(returnedData){
                $('#commentForm').append(returnedData);
            }