求JS 大神指导,页面的防止重复点击事件(具体见补充)

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了求JS 大神指导,页面的防止重复点击事件(具体见补充)相关的知识,希望对你有一定的参考价值。

我在一个页面上有两个 按钮,都需要一个重复提交的限制,在3-5秒内不能2次点击,现在我能够实现的是一个按钮的不能重复点击,要是加上第二个按钮总是出各种BUG ,求指导

这是我的, 按钮绑定的show();

    可以添加标记,第一次点击后变为false,每次点击判断这个标记是true才执行。

    如果是按钮防止重复点击,可以再按钮点击后,给按钮添加disabled属性。

    JavaScript一种直译式脚本语言,是一种动态类型、弱类型、基于原型的语言,内置支持类型。

    它的解释器被称为JavaScript引擎,为浏览器的一部分,广泛用于客户端的脚本语言,最早是在HTML(标准通用标记语言下的一个应用)网页上使用,用来给HTML网页增加动态功能。 

    JavaScript是一种基于对象和事件驱动并具有相对安全性的客户端脚本语言。同时也是一种广泛用于客户端Web开发的脚本语言,常用来给HTML网页添加动态功能,比如响应用户的各种操作。

参考技术A 点击事件里给button标签加一个自定义属性,存上次点击时间追问

求详细代码,JS 真心的没怎么做过

追答<input type="button" id="submit" value="提交">
<script>
$(document).ready(function()  
  $("#submit").click(function()  
    var nowTime = new Date().getTime();
    var clickTime = $(this).attr("ctime");
    if( clickTime != 'undefined' && (nowTime - clickTime < 5000))
        alert('操作过于频繁,稍后再试');
        return false;
     else
        $(this).attr("ctime",nowTime);
        alert('提交成功');
            
   );
 );
</script>

     


        

     

 

本回答被提问者采纳
参考技术B <!DOCTYPE HTML>
<html>
<head>
<meta charset="UTF-8" />
<title>last.html</title>
<style>
</style>
<script type="text/javascript" src="jquery-1.8.0.min.js"></script>
<script type="text/javascript">
var SLEEP = 5000;
    $ (function ()
    
    $ (':button').click (function ()
    
    var me = $ (this);
    me.prop ('disabled', true);
    me.interval = setInterval (function ()
    
    me.prop ('disabled', false);
    clearInterval (me.interval);
    , SLEEP);
    );
    );
</script>
</head>
<body>
<input type="button" value="btn1" />
<input type="button" value="btn2" />
</body>
</html>

追问

没什么效果啊,看起来提交前

提交后

还是重复提交了

追答

不知道,防止表单重复提交,不是你这样做的,你的做法有问题

参考技术C 可以的,一般博客里面很常见,hdp134793的博客有相关介绍

防止多次引入js文件导致的重复注册点击事件

前端代码中的js文件如果是动态引入的或者是某个事件操作进行注册的,那么重复的引入js文件或者多次触发注册事件会导致事件多次进行注册,造成不必要的麻烦,所以需要在每次注册之前将先前的事件进行取消,下面以按钮的注册点击事件为例进行说明:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <link rel="stylesheet" href="../css_com/reset.css">
    <style>

    </style>
    <!--网络cdn提供jquery,自己下载好引用一样-->
    <script src="https://cdn.bootcss.com/jquery/3.4.1/jquery.js"></script>
</head>
<body>
<input type="button" value="按钮1" id="btn">
<input type="button" value="按钮2" id="btn2">

<script>
//    为了防止多次注册事件,所以在每次注册之前需要提前将之前注册的点击事件去掉
    $(function(){
        $("#btn").click(function(){
            $("body").off("click","#btn2").on("click","#btn2",function(){
                alert("注册成功");
            });
        });
    });
</script>
</body>
</html>

  

以上是关于求JS 大神指导,页面的防止重复点击事件(具体见补充)的主要内容,如果未能解决你的问题,请参考以下文章

怎么解决jquery 中 load 事件重复载入js的问题?

前端js防止用户恶意操作,重复点击按钮事件

求帮忙改个js脚本,点击按钮让它运行就自动点击,不想手动点一下,谢谢大神们

PHP如何实现指纹验证,求大神指导

Java如何通过下拉菜单进入另一个页面,求大神指导

js click事件防止重复点击