2016-06-10 117 views
0

有没有方法可以添加一个后退按钮,用于重新填写输入内容?后退按钮,返回填写表格

我有一个输入栏和一个保存(提交)按钮的窗体。点击提交时,如果必填字段未填写,则会打开一个包含消息的新页面。如果我使用浏览器的后退按钮,我收到此消息:

确认重新提交表单

此网页需要使用您之前输入被 正确显示数据。您可以再次发送这些数据,但这样做您将会重复此页执行的任何操作。按 重新加载按钮重新提交加载页面所需的数据。 ERR_CACHE_MISS

因此,基本上,它要求我刷新,然后单击确定上一个弹出窗口,在此之后,形式重装但空字段确认。

我试过想过的一切,但我找不到解决方案。谢谢。

+0

很难说没有代码或特定的技术,你正在使用。解决这个问题的一般体系结构方式是根本不会离开表单页面,直到数据正确。但是对你来说什么是有效的,不可能说没有细节。 – Gimby

+0

你如何保存已填写的字段?您可能需要使用这里提到的webstorage:http://stackoverflow.com/a/17591919/4976543 ...然后,您可以轻松地在页面上使用onload函数填写字段.. –

+0

此外,cookies是一个选项:http://www.w3schools.com/js/js_cookies.asp –

回答

1

如果可能的话,我会改变结构,以便表单发回自己,并运行必填字段的验证。然后,如果一切正常,它将继续进行任何必要的处理。如果出现问题,它可以再次显示表单,但在代码中,您将可以访问已提交的值,因此您可以使用这些值预填充表单,然后将其显示给用户。这是一种非常标准的设计技术。

+0

我做了类似的事情,使用会话,它的工作原理:'//第1页 $ _SESSION ['varname'] = $ var_value; //第2页 $ var_value = $ _SESSION ['varname'];'。第2页与第1页相同,只是输入字段已经作为最后一次输入。 – olivia

+0

我想这会起作用,但是你重复了你的表单的代码,这有一个很大的缺点,因为它使得它在将来更改变得更加困难(你必须改变一切两次)。 – ADyson