• 注册
  • 前端后端 前端后端 关注:0 内容:26

    a标签和button按钮只允许点击一次,防止重复提交

  • 查看作者
  • 打赏作者
    • 前端后端
    • Lv.14
      帅气冲天

      前言

      a标签的onclick事件,防止重复提交,js中让onclick点击事件只执行一次!

      <a>标签如果中的onclick事件点击几次就触发几次,就会出现多次请求,所以再次点击的时候不让其再触发!

      方案

      a标签(用jQuery的方式

      方法1:在点击一次后,解除绑定

      <a id="mybtn">button</a>
      <script>
          $("a").click(function(){
              alert("1");
              $(this).css("color","#CCC");
              $(this).unbind("click");
          })
      </script>

      方法2:a标签 点击一次后设置点击失效,防止重复提交(对页面所有a标签生效)

      jQuery专门为此功能提供了一个函数one,这样写就能让click这个事件只执行一次

      <a href="javascript:;">button</a>
      <script>
          $("a").one("click",function(){
            $(this).click(function (){return false;});
          });
      </script>

      或者单一的绑定某个a标签,使它点击一次后设置点击失效

      <a href="javascript:;" id="buttonId">按钮</a>
      <script type="text/javascript">  
          $("#buttonId").one('click',function(){
          //下面写执行的内容...
          });
      </script>

      a标签(用JS的方式)

      方法:click事件被执行的时候,把它这个事件本身给清空

      <a href="javascript:;" id="buttonId" onClick="buttonSubmit()" >按钮</a>
      <script type="text/javascript">
          function buttonSubmit(){
              document.getElementById('buttonId').onclick = null; // 解绑onclick事件
              //下面是执行的内容...
          }
      </script>

      button(用jQuery的方式

      方法:加上属性disabled = “disabled” 或者 disabled = “true”

      <button id="btn" disabled="disabled">确定</button>
      <script>
          $("#btn").attr("disabled","true");
          $("#btn").attr("disabled","disabled");
          $("#btn").attr("disabled","false");
          $("#btn").removeAttr("disabled","disabled");
      </script>

      说明

      请根据自己实际情况做相应修改

      请登录之后再进行评论

      登录

      我关注的论坛

      暂没有数据

    • 发布内容
    • 做任务
    • 实时动态
    • 偏好设置
    • 帖子间隔 侧栏位置: