Javascript 使用php重置表单时出现的问题

Javascript 使用php重置表单时出现的问题,javascript,php,jquery,html,email,Javascript,Php,Jquery,Html,Email,我有一个联系人表单,它在提交后发送电子邮件,并在发送时成功显示警报。我的问题是1)发送后,电子邮件表单仍然有内容。2) 如果我刷新页面,将再次发送包含以前详细信息的电子邮件。为了解决这个问题,我在php中使用了下面的代码,它在不发送电子邮件的情况下进行刷新 标题(“位置:contact.php”); 退出将表单更改为 <form method="post" id="contactForm"> <div class="form-group"> &l

我有一个联系人表单,它在提交后发送电子邮件,并在发送时成功显示警报。我的问题是1)发送后,电子邮件表单仍然有内容。2) 如果我刷新页面,将再次发送包含以前详细信息的电子邮件。为了解决这个问题,我在php中使用了下面的代码,它在不发送电子邮件的情况下进行刷新

标题(“位置:contact.php”);
退出将表单更改为

  <form method="post" id="contactForm">
    <div class="form-group">
      <label for="name">Your Name</label>
      <input type="text" name="name" class="form-control" placeholder="Your Name" value="" />
    </div>

    <div class="form-group">
      <label for="email">Your Email</label>
      <input type="email" name="email" class="form-control" placeholder="Your Email" value="" />
    </div>

    <div class="form-group">
      <label for="message">Message</label>
      <textarea class="form-control" name="message"></textarea>
    </div>
    <input type="submit" name="submit" id="send" class="btn btn-success btn-lg center" value="Submit" />
  </form>

你的名字
你的电子邮件
消息

如果不想显示发送的内容,请不要在输入值上使用
echo$POST

您总是在html部分回显POST数据。只有在出现错误时才需要回显数据

value="<?php echo $_POST['name'] ?>"
然后在你的

if( $error )
...
else
{
    $name = "";
    $email = "";

    sendMail();
    // etc...
然后返回html:

value="<?php echo $name; ?>"
value=“”

为什么这样做:
值=“假设用户在输入姓名或电子邮件时出错,重新输入所有信息不是一件好事。因此,我使用echo弹出这些值,以便用户可以编辑它,“犯了错误”是不可预测的。您可以检查他是否遗漏了一个输入,然后再次显示发送的imcomplete内容,但这将是另一个问题……是的,这就是我想要实现的,如果他遗漏了一个输入,那么它将非常有用。因此,您需要阅读有关表单验证的内容。试着实现一些东西,如果你有一个问题还没有在SO中得到回答,那就打开一个新的问题。我也试着寻找了一些东西,直到后来我才发布了它。谢谢你的建议。我会自己看更多。假设用户在输入姓名或电子邮件时出错,重新输入所有信息不是一件好事。因此,我使用echo弹出这些值,这样用户就可以编辑@SzabolcsPáll的可能副本。我甚至在发布问题之前就尝试过这个解决方案。我使用了$(“#client”)[0].reset();就在我回应我的结果之后。由于某种原因,表单根本没有显示。于是张贴了question@MrLister这是一个打字错误改变了它。谢谢
value="<?php echo $name; ?>"