【发布时间】:2020-10-08 06:58:54
【问题描述】:
我在 c# 中有一个控制器,并且在控制器内部有一个保存方法。 save 方法保存/更新通过提交按钮单击和 javascript 提交的数据。问题是,如果您多次单击按钮,它应该只处理第一次单击,其余的应该被识别为重复提交,应该被控制器丢弃。如何在 c# mvc web 应用程序中做到这一点?
【问题讨论】:
-
为表单提供一次性令牌。当服务器收到返回的令牌时,它可以决定它是否已经被使用。或者,您知道,只需在客户端禁用提交即可。
-
是否有任何库可以做到这一点,或者我需要手动维护它?
-
可能有。我不知道。我通常只是禁用按钮客户端(为用户提供适当的反馈)。
-
您可以在保存按钮时禁用该按钮,也可以使用“isSaving”之类的布尔标志,以便在操作开始时检查此标志。
-
使用 javascript 禁用按钮不是一个好主意,因为如果用户知道如何启用该标志,那么它没有任何好处。
标签: javascript c# jquery ajax