gpt4 book ai didi

javascript - 表单操作期间的后退按钮问题

转载 作者:行者123 更新时间:2023-11-28 00:03:05 25 4
gpt4 key购买 nike

我的项目在 3 个不同的页面中有 3 个表单,比如 form1.cfm、form2.cfm、form3.cfm。

form1.cfm 包含第一个表格如下

<form name="firstform" method="post" action="form2.cfm">
// form-content
</form>

<a href="javascript:void(0);"onclick="javascript:document.firstform.submit();">Next</a>

form2.cfm(action page of first form)包含第二个表单如下

<form name="secondform" method="post" action="form3.cfm">
// form-content
</form>

<a href="javascript:void(0);"onclick="javascript:window.history.back();">Back</a>
<a href="javascript:void(0);"onclick="javascript:document.secondform.submit();">Next</a>

form3.cfm(action page of second form)包含第三种形式如下

<form name="Thirdform" method="post" action="form4.cfm">
// form-content
</form>

<a href="javascript:void(0);"onclick="javascript:window.history.back();">Back</a>
<a href="javascript:void(0);"onclick="javascript:document.Thirdform.submit();">Next</a>

因此,当我在 form2.cfm 中使用后退按钮链接时,它转到 form1.cfm 并且没有问题。当我在 form3.cfm 中执行相同操作时,它必须转到 form2.cfm,但它会询问用于表单重新提交,因为我知道它是 form1.cfm 的操​​作页面。

当我使用 form3.cfm 中的后退按钮链接并且不想看到表单重新提交页面时,我想使用 form2.cfm。

不知道能不能解决。但欢迎提出建议或解决方案。

提前致谢

最佳答案

问题在于,通过使用 POST,您是在告诉浏览器“嘿,此表单的效果可能不适合重复。”

您可以将方法更改为 GET,但这可能也不合适,因为那表示“此表单没有任何效果,它只是为了显示内容。”

一个解决方案是根本提交表单,而是使用 JavaScript 收集数据,使用 XHR 请求发送它,然后再次使用 JavaScript 导航到下一个表单。

另一种解决方案是完全不使用多个单独的表单。只需将它们全部放在一个主表格中即可。如果它变得很大,只需使用 JavaScript 隐藏不活动的部分,并使用下一步/后退按钮打开和关闭这些部分。

关于javascript - 表单操作期间的后退按钮问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20268060/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com