我有一个多页表单。每个页面将数据从一个页面发布到下一个页面,其中 PHP 将 POST 数据存储为 session 数据。在表的末尾,此 session 数据显示在汇总表中,然后最终提交将该 session 数据存储在 MySQL 数据库中。
有两种方法可以离开表单页面:这两种方法都可以提交表单数据。
1) 提交按钮,执行表单操作,并将用户导航到后续表单页面。
2) 页面菜单,用户可以从这里登陆任何其他表单页面。我在菜单导航上使用 JavaScript 来提示提交:
$('#menu a').onclick {
$('#myform').submit();
});
但是表单的提交操作是:
<form id="myform" method="post" action="?page=survey-2">
...form fields...
</form>
因此,发起提交只会将更新的数据发布到后续页面。
在用例中:用户填写表单,到达摘要页面,看到错误并使用菜单导航回页面,更改它并使用菜单跳回摘要页面:没有任何变化,显然是因为更新的数据仅提交到下一页,而不是其导航的目的地。
有没有一种方法可以使用js(或任何东西),以便当单击菜单中的链接时,该导航链接的目标也接收表单数据?或者,表单的操作可以一次提交到所有页面(但默认导航仅到后续页面)?
感谢您的考虑
最佳答案
使用 AJAX 将数据发送到处理程序,然后通过回调去任何你想去的地方
$('#menu a').onclick {
var data = $('#myForm').serialize();
var handler = '?page=survey-2';
$.post(handler,data,function(){
window.location.href='http://www.google.com';
})
});
有关 jQuery POST 的更多信息:
关于php - 根据链接将表单数据提交到各个位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12807679/