问题标签 [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.
html - javascript/jQuery 双重提交预防方法禁用启动 html5 属性(例如,必需、模式等)
我使用的 javascript/jQuery 双重提交预防方法是这样的:
所以在提交click
时,Submit Button
是disabled
并且表单是提交。所以不会发生表单的双重提交。但。现在的问题是html5属性不会启动(例如Required,Pattern等)
有没有人对如何解决这个问题有任何想法?
或者您可以建议不会篡改 html5 属性的替代双重提交预防方法?
编辑+丹尼尔·帕茨回答:
jquery - 单击后禁用 HTML 按钮以防止双击
我想防止双击,因此在单击事件时设置元素的disabled
属性input
似乎是正确的做法。其他stackoverflow答案反映了这一点。这就是我用 jQuery 在 CoffeeScript 中写的:
我有addClass('disabled')
基金会。
通常这是有效的。但是,如果我单击返回,该按钮仍处于禁用状态。如果我转到该页面并且该页面已被缓存,则该按钮仍处于禁用状态。是否有处理所有这些小问题的 JavaScript 库?似乎这是一个非常普遍的需求。我需要在上面添加更多的 JavaScript/jQuery 吗?
我会认为 HTML5 现在会有一些机制。
更新:我试图监听pageshow
事件并取消禁用提交按钮:
但是什么都没有发生,即使页面第一次加载也是如此。我用pageshow
错了吗?
jquery - 谷歌分析 - 事件跟踪 - 防止多个按钮点击
我在页面上有联系按钮。点击按钮显示联系电话。按钮与 Google Analytics 目标 > 事件跟踪 > 按钮单击 > 触发脚本相关联。
如果我想防止多次点击(脚本触发)并从分析中获得更多相关数据,我编写了代码,防止脚本触发超过 1 次点击。
这是网站http://www.seoptimizacija.net/#kontakt的链接
这是jQuery代码
需要意见吗?
jsf - 用于防止双重提交的纯 Java/JSF 实现
我们在 WebSphere v8.5 上使用 JSF 2.0 和几个组件库 PrimeFaces 4.0、Tomahawk 2.0、RichFaces 等。
我正在寻找通用机制来避免在刷新页面或再次单击提交按钮时重新提交表单。我有许多不同场景的应用程序。
现在我已经考虑在属性中使用一段 JavaScript 来禁用按钮onclick
,但这并不令人满意。为此,我正在寻找一个纯 Java 实现,例如 Struts2 <s:token>
。
python - 双表单提交
我有一个 Django 1.6 应用程序,但我遇到了重复提交的问题。我可以使用到处传播的想法,例如:重定向、令牌等(我得到了 JS 预防,但我不相信它)但是在提交之后我必须向 API 发出另一个请求。假设外部 API 请求需要 20 秒,因此有足够的时间来使用提交按钮。
我现在得到的最佳解决方案是将 CSRF(或任何其他唯一令牌)保存在数据库中并检查该令牌是否存在,如果存在则“杀死”请求。
但这就是问题所在,我可以终止请求吗?我无法用 500、404 响应,因为它将比执行 API 调用的第一个/原始请求更快地传递到浏览器。有没有办法用 Django 杀死/丢弃/挂起请求?也许这个想法很糟糕?请分享你的知识。
我希望我的英语是可以理解的。
java - 双击提交按钮时如何避免两次插入两条相同的记录?
我有一个弹出窗口,其中有两种 onclick 方法,即“提交”和“放弃”。
当我单击两次提交时,它会插入两条记录,这意味着重复记录。
我怎样才能避免这种情况?
form-submit - 如何在输入键上停止表单提交?
我不想提交表格。
当我在文本框上按 Enter 时,我的表单会自动提交并重新加载。
如何停止提交表单?
我的代码是。
jsp - 如何在 Struts 2 中获取响应页面时更改 URL
我在这里使用 Struts 和 Hibernate 进行注册,我遇到了一个问题,比如当我运行我的项目时,我得到了
当我提交数据时,数据成功保存在数据库中,将数据保存在数据库中后,我正在寻找 registration.jsp
响应页面,但那个时间 URL 将是
这会产生一个问题,例如如果我刷新页面最后添加的记录将再次添加
JSP表格:
struts.xml
: