当网络过慢,防止重复提交的方法.

/// <summary>
/// 防止重复提交:false 重复提交
/// </summary>
/// <returns></returns>
public bool IsTimeStamp()
{
         DateTime timeStamp;

if (Session["TimeStamp"] != null)
        {
               DateTime.TryParse(Session["TimeStamp"].ToString(), out timeStamp);  //当Session不为空,取第一次操作的时间.
               TimeSpan ts = DateTime.Now - timeStamp;                                        //取时间差

if (ts.TotalMilliseconds < 500)                                                             //判断 毫秒数量
              {
                   return false;
              }
        }
              Session["TimeStamp"] = DateTime.Now;                                              //给Session赋值.给操作的时间.

return true;
}

备注:建议此方法的调用,做在数据访问的总入口.  目前做法是业务逻辑调用.

时间: 2024-10-09 01:54:17

当网络过慢,防止重复提交的方法.的相关文章

php 解决表单重复提交实现方法介绍

重复提交是我们开发中会常碰到的一个问题,除了我们使用js来防止表单的重复提交,同时还可以使用php来防止重复提交哦. 例1  代码如下 复制代码 <?php/* * php中如何防止表单的重复提交 */session_start();if (empty($_SESSION['ip'])) {//第一次写入操作,判断是否记录了IP地址,以此知道是否要写入数据库    $_SESSION['ip'] = $_SERVER['REMOTE_ADDR']; //第一次写入,为后面刷新或后退的判断做个铺垫

防止表单重复提交的方法

1.在jsp页面的button添加相关js代码: <input type="button" value="提交" onclick="this.disabled=true;this.form.submit()"> 此方法缺点是用户可能禁用js,此方法就可能失效. 2.session的token机制 防止表单重复提交的方法

php 解决和避免form表单重复提交的方法

在提交表单的时候,可能遇到网速等导致页面突然加载变慢,用户重复地点击提交按钮,将在数据库产生多条数据,导致不可控情况. 比如下面的情况就会导致表单重复提交: 点击提交按钮两次. 点击刷新按钮. 使用浏览器后退按钮重复之前的操作,导致重复提交表单. 使用浏览器历史记录重复提交表单. 浏览器重复的HTTP请求. 网页被恶意刷新. 下面是几种解决的方法: 一:利用js设置按钮点击后变成灰色 $(document).ready(function(){ $(input:submit).click(){ s

MVC Ajax.BeginForm重复提交解决方法

mvc使用MVC Ajax.BeginForm提交的时候有重复提交结果的时候检查相关js文件引用情况, 其中mvc4注意 1 2 3 4 @Scripts.Render("~/bundles/modernizr") bundles.Add(new ScriptBundle("~/bundles/jqueryval").Include(                        "~/Scripts/jquery.unobtrusive*",

ThinkPHP 防止表单重复提交的方法

表单form中放置一个<input> 带有{$serviceToken} Controller相应的方法初始化时为其assign一个随机值,同时将该值存入session form submit到Controller时会带有当前的serviceToken,Controller对比该值与session中的是否一致, 如果二者一致,说明是第一次提交,处理业务,然后清空session: 如果二者不同,说明是重复提交,跳转. 异常:如果检测到参数异常,需要提醒重新输入,那么同样将serviceToken

【layui】一个简单的防止页面重复提交的方法

基本思路是:点击提交按钮后弹出遮罩层,防止多次点击导致的重复提交. 1 <div class="layui-form-item"> 2 <div class="layui-input-block t-c" > 3 <input id="file-submit" class="layui-btn" lay-submit lay-filter="demo1" value="

jQuery的$ .ajax防止重复提交的方法

没啥说的直接贴代码,很简单: 第一种方式:的onclick点击事件类型 <SCRIPT> function member_del(obj,id){ var lock = false; //默认未锁定 layer.confirm('确认要删除吗?',function(index){ if(!lock){//防止重复提交 lock = true; //锁定 $ .ajax({url:"/ CustomerEnquiry / Delete", data:{Id:id},type:

$.ajax防止多次点击重复提交的方法

第一种:使用$.ajaxPrefilter( [dataTypes], handler(options, originalOptions, jqXHR) ) 方法:$.ajaxPrefilter()方法 :是对全局所有的ajax请求有效,在所有的ajax请求之前,会对每一个请求统一做一些处理,可以去设置ajax的选项,也可以对现有的ajax选项进行更改: 接收两个参数: dataTypes :可选参数,一个可选的字符串,其中包含一个或多个空格分隔的数据类型: handler(options, o

ASP.NET Web Form和MVC中防止F5刷新引起的重复提交问题

转载  http://www.cnblogs.com/hiteddy/archive/2012/03/29/Prevent_Resubmit_When_Refresh_Reload_In_ASP_NET_Web_Form_MVC.html 什么是刷新/重新载入 IE中的刷新(Refresh),在FF和Chrome中称为重新载入(Reload),与正常进入页面的区别在于以下两点: 1. 缓存控制 如果文件(比如图片)在本地缓存中已经存在,正常进入页面会不访问服务器而直接从本地加载.而对于刷新操作,