javascript实现避免页面按钮重复提交

代码如下:

function preventAjax(obj,num){
            obj.disabled = true;
            var num = num;
            var types =obj.type;
            if(types == 'submit'){
                var text = obj.value;
                var time1 = setInterval(function(){
                    obj.value = num;
                    num--;
                    if(obj.value <= 0 ){
                        clearInterval(time1);
                        obj.disabled = false;
                        obj.value = text;
                    }
                },1000);
            }else{
                var text = obj.innerHTML
                var time1 = setInterval(function(){
                    obj.innerHTML = num;
                    num--;
                    if(obj.innerHTML <= 0 ){
                        clearInterval(time1);
                        obj.disabled = false;
                        obj.innerHTML = text;
                    }
                },1000);
            }
        }

绑定事件即可调用

以上就是本文的全部内容了,小伙伴们拿到自己项目中测试下吧。

(0)

相关推荐

  • AJAX避免用户重复提交请求实现方案

    在使用AJAX(jQuery)异步请求数据时,为了避免因某些原因用户同时多次点击按钮,提交重复的请求,我们需要禁用请求提交按钮. 重点:jQuery的 attr 和 removeAttr 两个函数,主要是元素button的disabled属性. Demo: 复制代码 代码如下: <body> <a class="disabled">Button disabeld</a>    <a class="abled">Butt

  • JSP使用自定义标签防止表单重复提交的方法

    本文实例讲述了JSP使用自定义标签防止表单重复提交的方法.分享给大家供大家参考.具体如下: 1. 编写servelt: package cn.itcast.apsliyuan.web.servlet; import java.io.IOException; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletReques

  • js控制再次点击按钮之间的间隔时间可防止重复提交

    <script type="text/javascript" language="javascript"> var wait = 60; function change() { $o = $("#J_refresh_checkcode"); if(wait == 0) { $o.removeAttr("disabled"); $o.html("看不清?换一张"); wait = 60; } el

  • JSP针对表单重复提交的处理方法

    本文实例讲述了JSP针对表单重复提交的处理方法.分享给大家供大家参考,具体如下: 1. 在生成表单时执行如下: 复制代码 代码如下: session.setAttribute("forum_add", "forum_add"); 2. 提交处理时作如下判断 if (isRedo(request, "forum_add")) { //提示重复提交,作相关处理 } 相关函数: /** * 判断是否为重复提交 * 1,检查Session中是否含有指定名

  • js防止表单重复提交的两种方法

    第一种:用flag标识,下面的代码设置checkSubmitFlg标志: 复制代码 代码如下: <script language=""javascript""> var checkSubmitFlg = false; function checkSubmit(){ if(checkSubmitFlg ==true){ return false; //当表单被提交过一次后checkSubmitFlg将变为true,根据判断将无法进行提交. } checkS

  • jsp 重复提交问题

    看了网上的,有几种方法: 1 在你的表单页里HEAD区加入这段代码: 复制代码 代码如下: <META HTTP-EQUIV="pragma" CONTENT="no-cache"> <META HTTP-EQUIV="Cache-Control" CONTENT="no-cache, must-revalidate"> <META HTTP-EQUIV="expires" C

  • JS Ajax请求如何防止重复提交

    好长时间没写js代码了刚好遇到这样的问题.我们系统多数表单没有做防止重复提交的. 由于不想在后端这边处理,因为假如由后端处理的话,就需要在页面加载的时候给出一次性的token值,加大了开发的工作量不说,还容易忘记做这个,同时,ajax也不好处理,需要提交失败的话同时返回新的token值. 所以我想在,js这边动手.其实以前和前端提过,久久不见动静,就只好弄块砖丢出去了.思路是,覆盖掉$.ajax,在这里面处理掉防止重复提交的问题,而前端的业务开发不受影响,不改代码,无感知. 我想架构的目的之一,

  • javascript实现避免页面按钮重复提交

    复制代码 代码如下: function preventAjax(obj,num){             obj.disabled = true;             var num = num;             var types =obj.type;             if(types == 'submit'){                 var text = obj.value;                 var time1 = setInterval(fu

  • asp.net 防止用户通过后退按钮重复提交表单

    防止用户通过后退按钮重复提交表单 <% response.Buffer=true response.Expires=0 response.ExpiresAbsolute=now()-1 response.CacheControl="no-cache" %> response.Buffer=true的意思就是指明输出页面是否被缓冲,当属性值为True时,服务器将不会向客户端发送任何信息,直到所有程序执行完或者遇到 <% Response.Flush %>或<

  • asp.net页面防止重复提交示例分享

    先放javascript代码: 复制代码 代码如下: <script type="text/javascript">        var clicks = 0;        function checkclick(obj) {            clicks = clicks + 1;            if (clicks>1) {                alert("请勿重复点击!");                ret

  • php页面防重复提交方法总结

    1.提交按钮置disabled 当用户提交后,立即把按钮置为不可用状态.这种用js来实现. 提交前 复制代码 代码如下: $("#submit").attr('disabled','true');         $("#submit").val("正在提交,请稍等"); .................................................................................... 执行后

  • javascript下阻止表单重复提交、防刷新、防后退

    1 服务器端的解决方法.这是我最为推荐的方法.优点是判断准确,兼容性最大. 做法:a页面显示表单,然后提交b页面处理,处理完后重定向到c页面显示结果. 1.0 在访问a页面时在session里生成一个标志ID,例如 //伪代码  session("submitID")=random()  然后把这个值写到表单的一个hidden的input里 //伪代码  <%response.write("<input name=submitID2 type=hidden val

  • Asp.net中阻止页面按钮多次提交的解决办法

    问题背景: 手头上的KPI分类评级考核系统,页面的提交按钮是用LinkButton或者Button做的.当大量用户同时在线访问该站点时,应用程序服务器出现CPU占用100%的糟糕状况,页面会卡住不动,用户不明情况连续点击提交按钮重复提交,造成数据库中出现大量的重复数据. 其实,即便服务器没有崩掉,快速频繁点击提交按钮,也会出现重复提交的问题. 尝试过:1)在提交按钮的点击事件里设置提交按钮的Enabled属性 Enabled = false; ,这个属性设置在未拿到新页面前是无效的,问题依然存在

  • 解析php防止form重复提交的方法

    php 防止表单重复提交实例: 复制代码 代码如下: <?php session_start(); $_SESSION['fsess']=($_SESSION['fsess'])?$_SESSION['fsess']:time();?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transition

  • JavaWeb中HttpSession中表单的重复提交示例

    表单的重复提交 重复提交的情况: ①. 在表单提交到一个 Servlet,而 Servlet 又通过请求转发的方式响应了一个 JSP(HTML)页面,此时地址栏还保留着 Servlet 的那个路径,在响应页面点击 "刷新". ②. 在响应页面没有到达时,重复点击 "提交按钮" ③. 点击返回,再点击提交 不是重复提交的情况:点击 "返回","刷新" 原表单页面,再点击提交. 如何避免表单的重复提交:在表单中做一个标记,提交到

  • Java防止频繁请求、重复提交的操作代码(后端防抖操作)

    在客户端网络慢或者服务器响应慢时,用户有时是会频繁刷新页面或重复提交表单的,这样是会给服务器造成不小的负担的,同时在添加数据时有可能造成不必要的麻烦.所以我们在后端也有必要进行防抖操作. 1.自定义注解 /** * @author Tzeao */ @Target(ElementType.METHOD) // 作用到方法上 @Retention(RetentionPolicy.RUNTIME) // 运行时有效 public @interface NoRepeatSubmit { //名称,如果

  • 控制页面按钮在后台执行期间不重复提交的JS方法

    在ASP.NET中,如果在点了一个按钮,提交到后台执行期间,再点一次按钮,会出现两种情况,一种是执行了两次后台代码,另一种是等待前一次的提交动作执行完后再次执行提交动作,无论是哪一种,都是跑了两遍后台代码,这是很多情况下不希望出现的.以下代码在 IE.傲游极速模式下测试通过. 复制代码 代码如下: <%@ Page Language="C#" AutoEventWireup="true"  CodeFile="Default.aspx.cs"

随机推荐