保留表单值的后退按钮


Back Button with keeping form value

以下是返回按钮:

<button onclick="history.go(-1);">Back </button>

(这个按钮是在表单外调用的,否则它不起作用,我不知道为什么…)

形势

我有4页这样的:

Page 1 : Form for information level 1
Page 2 : Form for information level 2
Page 3 : Summary of the 2 precedent Form
Page 4 : Form post succes page

我已经在第2页和第3页按下了"返回"按钮。对于第2页,它工作得很好。当我点击时,我会恢复以前的所有值。

我的问题

它来自第3页的"返回"按钮。我所有的表单值都不见了。。。

Soo,我知道我可以通过在表单中包含BACK按钮来做到这一点,然后再次将我的所有值发布到上一页,但我想知道是否有一种"简单快捷"的方法来实现这一点?

谢谢。

1)对于不提交表单的按钮,您必须指定其类型:<button type="button"></button>

2) 你的问题可以通过几种方式解决:

a) 单击Next将所有值保存到会话,返回页面时只保存所有值
您的输入看起来像
<input type='text' value='<?php echo isset($_SESSION['a1']) ? $_SESSION['a1'] : ''; ?>' name='a1'/>
在PHP端:$_SESSION['a1'] = isset($_POST['a1']) ? $_POST['a1'] : '';
在最后一个确认步骤中,您将上次表单中的值+会话中的值保存到数据库中,然后清除会话。

b) 您可以使用带有选项卡的单个表单,并且只使用jQuery/js:显示特定的选项卡

<div class='tab' data-ref='#tab1'>First step tab</div>
<div class='tabContent' id='tab1'>Content of first step tab</div>
$('.tab').click(function(){
    $('.tabContent').hide();
    $($(this).data('ref')).show();
});

并且只保存最后一步的所有数据
我个人会采用b变体