防止 Web 应用程序中的操作被调用两次 (ASP.NET MVC)

发布于 2024-11-07 19:23:14 字数 120 浏览 1 评论 0原文

确保 ASP.NET MVC 操作不会被调用两次(即,如果用户快速连续单击按钮两次)的最佳方法是什么?在我们的大多数屏幕上,如果发生这种情况也没什么大不了的……但在少数屏幕上,它会造成严重破坏(比如多次向人们付款而不是一次)。

What is the best way to make sure an ASP.NET MVC action is not called twice (i.e. if the user clicks on a button twice in quick succession)? On most of our screens, it's not a big deal if it happens ... but on a few it causes havoc (like paying people multiple times instead of just once).

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

给妤﹃绝世温柔 2024-11-14 19:23:14

您可以使用 JavaScript 禁用提交按钮。以 jQuery 为例:

$(function() {
    $('form').submit(function() {
        $(':submit, :image', this).attr('disabled', 'disabled');
    });
});

You could disable the submit button using javascript. For example with jQuery:

$(function() {
    $('form').submit(function() {
        $(':submit, :image', this).attr('disabled', 'disabled');
    });
});
千年*琉璃梦 2024-11-14 19:23:14

最近有一个关于这个的话题(实际上是达林)。

按照他提到的方式进行操作并实施 Post-Redirect-Get 策略的组合涵盖大多数洞。

There was a recent thread about this (with Darin actually).

A combination of doing as he mentioned and implementing a Post-Redirect-Get strategy covers most holes.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文