gpt4 book ai didi

forms - 单击“后退”按钮时防止重复提交表单而不破坏页面

转载 作者:行者123 更新时间:2023-12-02 05:13:13 30 4
gpt4 key购买 nike

我有一个带有表单的页面,我试图在其中防止重复提交,这非常简单(以防万一有人好奇,我使用了这个

$("form").submit(function()
{
setTimeout(function()
{
$("input").attr("disabled", "disabled");
}, 50);
});

...这是我从 this page 偷来的,它工作正常。正如预期的那样,输入很快被禁用,表单按预期提交,用户被重定向。

这是我的问题:我预计用户有时会使用“后退”按钮而不是页内导航,因此我希望页面在他们单击“后退”按钮时能够正常运行。但是,当我在成功发布后单击“后退”按钮时,我将返回到上一页,并且所有输入都被禁用(您可能已经知道会发生这种情况)。如果他们愿意,我希望他们能够在单击“后退”按钮后使用该页面。

我首先尝试使用 header/meta 标签告诉浏览器不要缓存该页面,但这没有用(在 Firefox 3.6.8 中)- 然后我决定无论如何我都不想这样做,因为它可能不会跨浏览器兼容,并且无论如何都可能不是最佳实践(here 就是这样一种情况)。我不想像我见过的某些应用程序那样使用任何“破坏”后退按钮的东西(例如,当用户单击它时,它不会将他们带回页面,而是强制他们留在该页面上),这对我来说似乎是个坏主意。有谁知道我可以防止在客户端重复提交表单而不会在用户单击“后退”按钮时使页面无用的方法吗? (以防万一,我使用的是 ASP.NET MVC 1)。

最佳答案

嗯,听起来没有其他人想出更好的主意并将其发布。我注意到我们自己的 Stack Overflow 具有相同的行为(至少在“提问”页面上),禁用提交按钮,当我单击“返回”时,该按钮仍然被禁用。也许我能做的最好的事情就是让它禁用按钮,从而迫使他们手动刷新页面,或者(希望)鼓励他们尽可能使用站点导航而不是后退按钮。

不过,如果其他人有任何更好的想法,我仍然欢迎他们。

关于forms - 单击“后退”按钮时防止重复提交表单而不破坏页面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3496196/

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