0

如果我有一个表单,并且不要事先点击提交,使用标准的 javascript 历史记录。

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

将带我回到上一页。但是,如果我单击提交,则会出现错误(验证)。后退按钮将带我回到同一页面(发生提交错误之前的页面)。

如何创建一个后退按钮,无论验证错误,它总是会回到前一页。

谢谢

4

1 回答 1

0

遵循实际历史并不是做你想做的事的好方法。您在这里看到的情况当然是预期的行为,因为一遍又一遍地提交表单只会一遍又一遍地将带有表单的页面添加到历史记录中。根据设计,出于安全原因,没有办法任意检查到用户在您网站上的最后一页不是表单。

因此,我认为 Cake 中的解决方案会更好。如果用户只能从一个地方到达页面,您可以使按钮仅链接回该页面,而不是依赖于历史记录。或者,我会将用户最初来自的页面存储在会话中,并且只要用户留在表单上,​​请注意不要重写它,然后链接到后退按钮上的那个页面。

于 2013-09-13T20:55:17.083 回答