C# 防止在没有javascript的情况下提交多个表单
我有一个Asp.net MVC操作,用于创建用户帐户(在输入验证之后)。以及一个包含调用此操作的注册表的视图。当操作验证输入时,用户将与webbrowser一起等待服务器响应,并再次单击提交按钮。这将创建多个帐户。有没有一种方法可以在不使用javascript的情况下让用户避免表单重新提交。我不能在这个项目中使用javascript,它是为非javascript浏览器设计的。或者您可以建议(服务器)其他解决方案吗 编辑:C# 防止在没有javascript的情况下提交多个表单,c#,html,asp.net-mvc,webpage,C#,Html,Asp.net Mvc,Webpage,我有一个Asp.net MVC操作,用于创建用户帐户(在输入验证之后)。以及一个包含调用此操作的注册表的视图。当操作验证输入时,用户将与webbrowser一起等待服务器响应,并再次单击提交按钮。这将创建多个帐户。有没有一种方法可以在不使用javascript的情况下让用户避免表单重新提交。我不能在这个项目中使用javascript,它是为非javascript浏览器设计的。或者您可以建议(服务器)其他解决方案吗 编辑: 此表单请求使用POST方法 不允许使用JavaScript,因为此Web应
你必须在服务器端处理这种情况,这是没有办法的 我想到了三种选择:
- 创建一个cookie,并为每个提交检查它是否存在
- 类似,但使用会话对象
- 在创建新帐户之前,请始终检查数据库中是否存在该用户。这应该是一个无脑的反正李>
当然,你也应该考虑让这个过程更轻一些。因此,系统可以快速响应输入,而不是让用户等待。是否要求使用MVC?我认为您可以使用WebForms实现类似的功能。当用户提交请求时,您可以在“代码隐藏”中禁用“提交”按钮,如下所示:
btnSubmit.Enabled = false;
但如果MVC是必须的,@walther的答案将是正确的不使用JS的Web应用程序。。。听起来很奇怪。。。在MVC中也是这样。是Get请求还是Post请求?无论哪种方式,您都可以应用检查,如果该用户已经存在,则重新选中他。@Rajeev Kumar有一些不支持javascript的残疾人专用web浏览器。此Web应用程序是针对他们的。如果未完成,浏览器会呈现页面吗?如果是,您可以使用验证代码将用户重定向到新页面。它将输出一些初始HTML,其中包含“正在做一些工作……请稍候”等文本。当验证完成后,输出页面的其余部分:“工作完成了。点击这里登录”。我很好奇:为什么在残疾人使用的浏览器中不允许使用JavaScript?