`
ihuashao
  • 浏览: 4791893 次
  • 性别: Icon_minigender_1
  • 来自: 济南
社区版块
存档分类
最新评论

防止表单重复提交

ASP 
阅读更多

防止表单重复提交1、提交后 禁用提交按钮(像CSDN这样)
2、数据处理成功马上跳转到另外一个页面!

操作后刷新的确是个问题,你可以使用跳转页面、关闭本页面,如果是有参数据条件来控制的,那就应该好做了,可以直接修改window.location的值,把值的参数全部改掉,这样就可以了。我用的方法就是以上的。

document.all("save_"+idx).disabled=true;


刚才有位兄弟也这么问其实很简单
在提交的页面也就是数据库处理之前
if session("jy")=true then
response.write "错误,正在提交"
response.end
end if
在数据库处理完毕后,释放session("jy")
session("jy")=false
即可!


用SESSION 或者用个麻烦点的方法:

用window.open 弹出表单输入页面,点提交后关闭该页;

处理提交的ASP页也是用弹出,即先设定表单的target为"submit_form",点提交时window.open("XXX.asp","submit_form"),然后用JS来提交表单,最后就是window.close();

对处理提交的ASP页,输入数据到数据库完成后,弹出对话框,“提交成功”什么的,最后也来个window.close();

因为对于window.open()打开的窗口,用window.close()来关闭时不会弹出提示框,直接就关闭窗口了,这样用户就根本没有机会做重复提交了。

不知道这样合不合你的意思


2、数据处理成功马上跳转到另外一个页面!
这个方法最简单

转:(原理借用)

首先,我们可以定义一个session变量用来保存一个表单的提交序列号。这里我定义为“$userLastAction”。然后在表单里加入一个hidden变量,把值设为$userLastAction+1:
<input type=Hidden name=lastAction value=<? =$userLastAction+1 ?>>
最后,在处理提交之前判断表单是否已被提交过:
if($lastAction>$userLastAction and inputIsValid(...)){
$userLastAction++; // 序列号加1
// 处理表单数据
}
我一直使用这个
你的后台处理页面,也就是数据接收页面,执行完相关的操作后,使用下面的语句:
response.write("<script>alert('数据提交成功******');window.location.href='你想要转向的页面的地址';</script>")
这样随便他返回后怎么刷新,显示的始终是“数据提交成功******”的对话框

分享到:
评论

相关推荐

    springboot2.1+redis+拦截器 防止表单重复提交

    在现代Web应用开发中,防止表单重复提交是一项重要的任务,因为这可能导致数据不一致性和服务器资源浪费。本文将深入探讨如何使用Spring Boot 2.1、Redis和拦截器来实现这一功能。以下是对这个主题的详细解释: ...

    javascript方式防止表单重复提交

    在Web开发中,表单重复提交是一个常见的问题,可能导致数据的冗余或错误。JavaScript作为客户端脚本语言,可以通过多种策略来防止用户意外或恶意地多次提交表单。以下是一些关键的知识点: 1. **禁用提交按钮**:最...

    防止表单重复提交(asp.net )

    为了确保用户在提交表单时不会无意或有意地多次发送请求,我们需要实施有效的防止表单重复提交的策略。以下是一些关键知识点: 1. **表单重复提交的类型**: - **用户行为**:用户可能意外按下刷新按钮,导致已...

    防止表单重复提交的方法(简单的token方式)

    防止表单重复提交的方法(简单的token方式),内附实现代码及实现思路。

    thinkphp3.2 防止表单重复提交

    在Web开发中,防止表单重复提交是一个重要的问题,它能确保用户操作的唯一性和数据的一致性。ThinkPHP 3.2 是一个基于MVC模式的PHP开发框架,提供了丰富的功能来帮助开发者构建安全、高效的应用。在这个场景中,我们...

    springboot+redis+AOP 防止表单重复提交

    AOP是面向切面编程,允许开发者定义“切面”,这些切面可以封装跨越多个对象的行为,如日志记录、事务管理或,就像在这个场景中,防止表单重复提交。AOP的核心概念是“切点”(Pointcut)和“通知”(Advice)。切点...

    浅谈利用Session防止表单重复提交

    浅谈利用Session防止表单重复提交 Session是Web应用程序中的一种机制,用于存储用户的会话信息。在Web应用程序中,表单重复提交是一个常见的问题,可能会导致数据库中产生冗余数据,浪费数据库资源。利用Session...

    自定义注解解决API接口幂等设计防止表单重复提交(生成token存放到redis中)

    为了解决这一问题,我们可以采用自定义注解结合Redis来实现一个防止表单重复提交的解决方案。 首先,让我们理解自定义注解的核心思想。注解是一种元数据,它提供了在代码中添加信息的方式,这些信息可以被编译器或...

    struts2防止表单重复提交--重定向

    下面将详细解释Struts2如何通过重定向来防止表单重复提交。 首先,理解表单重复提交的场景:用户在提交表单后,由于网络延迟或其他原因,可能会无意中多次点击提交按钮。如果服务器没有处理这些重复请求,那么相同...

    Struts2防止表单重复提交示例

    在Struts2中防止表单重复提交的过程主要包括以下几个步骤: 1. **生成Token**:当用户发起表单请求时,服务器会生成一个唯一的Token并将其存储在服务器的会话(Session)中,同时将这个Token作为隐藏字段放入到HTML...

    redis专栏 002 springboot redis 防止表单重复提交

    使用Redis和Spring Boot来防止表单重复提交的基本思路是:在接收到表单提交请求后,生成一个唯一的请求标识(例如,基于UUID),并将其作为键存储到Redis中,设置一个适当的过期时间。当服务器接收到新的请求时,会...

    几种防止表单重复提交的方法

    几种防止表单重复提交的方法 禁掉提交按钮。表单提交后使用Javascript使提交按钮disable。这种方法防止心急的用户多次点击按钮。但有个问题,如果客户端把Javascript给禁止掉,这种方法就无效了。 我之前的文章曾说...

    struts2利用token防止表单重复提交(源代码)

    struts2防止表单重复提交,利用struts的拦截器tokenSession,轻轻松松解决表单重复提交的问题。 附件为源代码,后台延迟了3秒,可直接在web服务器下部署运行,输入用户名和密码后,多点几次提交按钮,然后看控制台...

    JavaScript防止表单重复提交代码,指定时间内禁止重复点击.zip

    在Web开发中,防止表单重复提交是一个常见的需求,特别是在涉及关键操作如用户登录、支付等场景下。JavaScript作为客户端脚本语言,可以用来实现这一功能,以避免用户无意或恶意地连续点击提交按钮,导致服务器接收...

    struts数据回显、模型驱动、防止表单重复提交

    本主题将深入探讨Struts框架中的数据回显、模型驱动以及如何防止表单重复提交,这些都是在实际开发中非常关键且实用的技术点。 1. 数据回显: 数据回显是指在用户提交表单后,服务器端处理数据并返回结果页面时,将...

Global site tag (gtag.js) - Google Analytics