问题标签 [double-submit-prevention]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
10 回答
6799 浏览

asp.net - 当我禁用提交按钮以防止双击时,为什么我的表单没有发布?

像地球上的其他 Web 开发人员一样,我遇到了用户双击表单上的提交按钮的问题。我的理解是,处理此问题的常规方法是在第一次单击后立即禁用按钮,但是当我这样做时,它不会发布.

我确实对此进行了一些研究,上帝知道有足够的信息,但是其他问题,例如Disable button on form submission,禁用按钮似乎有效。提交后禁用按钮的原始海报似乎和我有同样的问题,但没有提到他如何/如果他解决了这个问题。

这是一些关于如何重复它的代码(在 IE8 Beta2 中测试,但在 IE7 中有同样的问题)

我的aspx代码

我的cs代码

请注意,当您单击按钮时,会发生回发,并且时间会更新。但是当您选中该复选框时,下次单击该按钮时,该按钮被禁用(如预期的那样),但永远不会回发。

我到底在想什么???

提前致谢。

0 投票
4 回答
2589 浏览

asp.net - 帮助 DataGrid/CheckBoxes/双重提交

我们有一个简单的数据网格。每行都有一个复选框。复选框设置为自动回发,并且代码隐藏具有复选框选中更改事件的事件处理程序。这一切都按预期工作,没有什么复杂的。

但是,我们希望在选中复选框后立即禁用复选框以防止重复提交,即选中复选框,通过客户端 javascript 禁用所有复选框,提交表单。

为了实现这一点,我们将一些代码注入到 onclick 事件中,如下所示(请注意,警报仅用于测试!):

在检查渲染页面的来源时,我们得到以下信息:

这一切都按顺序显示,但是服务器端事件不会触发 - 我相信这是由于复选框被禁用,就好像我们只是将警报留在其中并删除禁用复选框的调用它一切正常。

即使复选框被禁用,我是否可以强制触发 check-changed 事件?

0 投票
13 回答
72382 浏览

javascript - 如何阻止“返回”和“刷新”按钮重新提交我的表单?

我正在做网络开发。

我有一个与信用卡有关的页面,当用户单击“刷新”或“返回”时,交易将再执行一次,这是不需要的。

这包括浏览器左上角的“返回”和“刷新”按钮,“右键单击->刷新/返回”,按“F5”键。这只能在某些 cgi 页面上完成,而不是全部。

这可以使用Javascript来完成吗?还是有什么其他方法?

0 投票
0 回答
4525 浏览

javascript - 禁用浏览器中的“返回”和“刷新”按钮

我正在做网络开发。我有一个与信用卡有关的页面,当用户单击“刷新”或“返回”时,交易将再执行一次,这是不需要的。这包括浏览器左上角的“返回”和“刷新”按钮,“右键单击->刷新/返回”,按“F5”键。这只能在某些 cgi 页面上完成,而不是全部。这可以使用Javascript来完成吗?还是有什么其他方法?

谢谢,西提

完全重复如何阻止“返回”和“刷新”按钮重新提交我的表单?

0 投票
2 回答
825 浏览

iphone - 屏幕抓取中用于提交的 iphone facebook 图标

您认为将 Facebook 图标放在您的屏幕抓取列表中以供提交会违反苹果 sdk?

0 投票
1 回答
2983 浏览

html - 防止双重表单提交

完全重复如何在服务器端处理多个提交

手头的一般任务:防止在基于 Web 的多用户应用程序中提交双重表单。想想金融交易。

我有两种可以串联使用的方法:

  1. JavaScript 禁用按钮
    • 缺点:如果禁用 JavaScript,则不起作用
  2. 后端验证 - 查看此类型的最后一个请求来自该用户多久之前,如果不是太久之前发出错误
    • 缺点:如果两个提交的距离足够近,每个提交都可能无法察觉到另一个

我正在寻找主题专家来贡献他们的最佳实践以及深奥的技巧。可以是任何语言和框架,但 Django 特别感兴趣。网上已经写了很多关于手头任务的文章,但如果能在此处展示最佳实践,那就太好了。

0 投票
1 回答
612 浏览

jboss - 为什么 JBoss Post Form 在 URL 中发送参数?

尽管是 POST 表单,我们的 JBoss 表单还是在 URL 中而不是在请求中发布参数。我已确认该表单已使用 Firebug 在实际页面中发布。请注意,这是在一个 portlet 中。

我们正在使用 javascript 提交表单,例如:

'portlet' 来自哪里

任何想法为什么我们在 URL 中获取输入?

生成的标记如下所示:

0 投票
2 回答
408 浏览

javascript - 类似脚本的组件,以避免重复提交

我正在寻找一个脚本来防止用户两次点击提交按钮,特别是长时间后台处理表单。我想实现的东西不仅是功能性的,而且在视觉上也很吸引人。任何人都可以分享一些如何使用例如 scriptaculous 来完成此任务的技巧吗?

谢谢

0 投票
3 回答
3004 浏览

jquery - jquery新手:将验证与隐藏提交按钮相结合

我是新的 jQuery。我已经通过以下方式验证了我的表单(MVC 1.0 / C#):

我还想隐藏提交按钮,以防止在控制器完成和重定向之前抽搐鼠标综合症导致重复输入(我正在使用 GPR 模式)。为此目的,以下工作:

但是,我无法让两者一起工作。具体来说,如果在单击提交按钮后验证失败(考虑到表单的工作方式,这种情况会发生),那么除非我进行浏览器刷新以重置“已单击”属性,否则我将无法再次提交表单。

除非表单验证,否则如何重写上面的第二种方法以不设置 clicked 属性?

谢谢。

0 投票
24 回答
213998 浏览

javascript - 防止在jQuery中重复提交表单

我有一个表单,服务器需要一点时间来处理。我需要确保用户等待并且不会尝试通过再次单击按钮来重新提交表单。我尝试使用以下 jQuery 代码:

当我在 Firefox 中尝试此操作时,所有内容都被禁用,但表单未与它应该包含的任何 POST 数据一起提交。我不能使用 jQuery 提交表单,因为我需要与表单一起提交的按钮,因为有多个提交按钮,并且我确定哪个值被包含在 POST 中。我需要像往常一样提交表单,并且在发生这种情况后我需要立即禁用所有内容。

谢谢!