是否有可能提交表单而不加载新窗口?


Is it possible to submit a form and not load the new window?

我目前有一个表单设置,将一些数据传递给php文件,该文件在后台进行一些处理,这对用户来说并不重要。目前,当单击提交按钮时,将打开一个新窗口(加载处理输入信息的php文件)。由于没有真正的用户内容,页面只是空白。理想情况下,我只希望在提交表单时修改当前页面(让表单消失,并在其位置显示一条消息,例如"您的请求已收到")。

是否有可能提交表单并处理数据而不必打开新窗口?是否有可能以某种方式对用户隐藏这一点?
<form action="<!-- FORM ACTION -->" method="post" target="_blank">

使用jquery,你可以这样做:

$('form').submit(function(){
  $.ajax({  
    type: "POST",  
    url: "post.php",  
    data: $('form').serialize(),  
    success: function() {  
      //something to let the user know it was submitted  
    }  
  });
}

了解ajax。特别是使用像jQuery这样的库。

http://api.jquery.com/jQuery.ajax/

这确实是可能的。用于完成此任务的技术称为"AJAX",即"异步JavaScript和XML"。

这里是一个链接,让你开始:提交一个表单没有页面刷新

我还建议查看JavaScript库,jQuery,因为它将使您的生活简单得多。jQuery甚至有一个插件来做你想做的事情:jQuery表单插件

您可以使用标题将操作页面重定向到表单页面,就像使用登录表单一样,将其发送出去进行处理,然后返回到设置会话id的页面。

header ('Location:redirect_page.php');

或者像Samusaaron3说的那样使用jQuery和ajax