`

一个避免用户重复点击按钮造成重复数据的小技巧

 
阅读更多

    <script>
        //启用遮罩
        function SetEstopForButton(buttionId) {
            if ($("#btnEstop")[0] == null) {
                $("#" + buttionId).after("<div id='btnEstop' style='z-index:999999;position:absolute;background-color:#ccc;filter:Alpha(Opacity-30);background:url(/images/ui-bg_flat_0_aaaaa_40x100.png) #aaaaaa repeat-x 50% 50%;opacity:0.3;'></div>");
                $("#btnEstop").css("width", ($("#" + buttionId).outerWidth() + 4));
                $("#btnEstop").css("height", ($("#" + buttionId).outerHeight() + 4));
                $("#btnEstop").css("left", ($("#" + buttionId).offset().left - 2));
                $("#btnEstop").css("top", ($("#" + buttionId).offset().top - 2));
            }
        }

        //移除遮罩
        function RemoveEstopForButtton() {
            $("#btnEstop").remove();
        }

        //是否已经点击了按钮
        var _isChickButton = false;

        function IR_StopContinuteClick(fun, buttonId) {
          
            if (typeof (fun) != "function") {
                return false;
            }

            //先判断是否已经点击了
            if (_isChickButton) {
                return false;
            }
            _isChickButton = true;

            //设置提交按钮不可编辑
            SetEstopForButton(buttonId);

            if (!fun()) {
                //恢复提交按钮编辑
                RemoveEstopForButtton();
                _isChickButton = false;
            }
            return true;
        }

    </script>

    <script type="text/javascript">

        function CheckData() {

            return IR_StopContinuteClick(DoCheck, "myBtn");

        }

        function DoCheck() {
            var username = document.getElementById("userName").value;
            if(username=="") {
                return false;
            }
            return true;
         }
    </script>

 

<form id="form1" runat="server">
    <div>
        <input id="userName" />
        <input type="button" value="提交"  id="myBtn" onclick="return CheckData()"/>
        <input value="启用遮罩" onclick="SetEstopForButton('myinput')" id="myinput" type="button" />
        <input value="移除遮罩" onclick="RemoveEstopForButtton()" id="Button1" type="button" />
    </div>
    </form>

分享到:
评论
发表评论

文章已被作者锁定,不允许评论。

相关推荐

    unity 随机数不重复出现

    在Unity游戏开发中,随机数的生成是一个非常常见的需求,尤其是在设计一些需要概率事件或随机元素的游戏时。然而,有时候我们需要确保生成的随机数在一定范围内不会重复出现,这在诸如抽奖、随机生成关卡等场景中尤...

    40种网页常用小技巧

    网页设计和优化是一个涵盖广泛领域的主题,涉及到许多实用的小技巧,可以帮助提高用户体验、提升网站性能以及优化搜索引擎排名。以下40种网页常用小技巧将帮助你成为更出色的网页设计师: 1. **响应式设计**:确保...

    精彩编程与编程技巧-VB中防止将重复项目添加到列表框控件中...

    在Visual Basic(简称VB)编程环境中,为了提高程序的健壮性和用户体验,开发者经常需要处理列表框(ListBox)控件中重复数据的问题。本文将详细介绍如何通过调用`SendMessage`函数来检查列表框中是否存在重复项,...

    CSS减少代码重复性的几种常见小技巧.docx

    以下是一些常见技巧,可以帮助你在编写CSS时避免冗余并提升效率: 1. **使用关系表达式代替直接数据值**: 当设计中的某些样式值相互依赖时,通过关系表达式来定义它们,而不是直接写出具体的数值。例如,将按钮的...

    excel怎么打印多个工作表?将多个工作表生成一个打印文件一次打印出来的技巧.docx

    接下来,点击“打印预览”按钮,可以看到这几个工作表已经合成一个打印文件了。在打印预览中,我们可以看到每个工作表的内容已经被合并到一个打印文件中。这样,我们就可以一次打印出所有需要打印的工作表,避免了...

    EXCEL常用技巧及操作.pptx

    选中包含重复数据的单元格区域,点击“数据”选项卡中的“删除重复项”按钮。在打开的对话框中选择需要检查的列,确认后,Excel会自动检测并删除重复值,确保数据的准确性。 **Tip 5:双色渐变展示数据分布** 使用...

    Excel_2007_技巧篇

    在Excel2007使用技巧篇中,有多种技巧可以提高我们的工作效率,避免在操作过程中对数据造成不必要的损失。以下是一些重要的知识点总结: 1. 保护隐藏单元格数据不被删除 在处理含有隐藏行或列的Excel表格时,若直接...

    Word文档管理小技巧Word范文.docx

    Word文档管理小技巧涵盖了几种实用的操作方法,可以帮助用户更高效地处理和管理Word文档。以下是对这些技巧的详细说明: 1. **快速合并多个Word文档** 当你需要将多个Word文档合并到一个文档中时,可以避免手动...

    QUARTUES II与Modelsim实用小技巧

    根据给定的文件信息,以下是关于QUARTUS II与ModelSim实用小技巧的知识点: 1. 快捷键使用技巧 在进行FPGA设计时,合理运用快捷键可以大幅提高开发效率。例如,保存操作可以使用快捷键Ctrl+S,进行分析综合时可以...

    VC编程的一些小技巧

    在VC编程中,开发者经常会遇到各种挑战,而掌握一些实用的小...通过熟练运用这些小技巧,开发者可以更有效地进行VC编程,提升代码质量和用户体验。不断学习和实践是提升编程技能的关键,尤其是在快速发展的IT行业中。

    Struts2防止重复提交的解决方案

    - 使用JavaScript禁用提交按钮或者通过AJAX异步提交表单,从而避免用户误操作导致的重复提交。 #### 四、Struts2相关开发技巧 除了防止重复提交外,Struts2还提供了丰富的功能支持,包括但不限于: 1. **处理结果...

    网页制作常用的小技巧

    可以通过创建一个按钮,当点击时,显示当前页面的源代码。 ```html 查看源代码" onclick="javascript: location.href='view-source:' + location.href"&gt; ``` 这有助于用户提供技术支持时方便地分享页面源代码。 ###...

    网页常用小技巧

    在网页设计和开发的世界里,掌握一系列实用的小技巧可以极大地提升工作效率和页面的用户体验。以下是一些关于"网页常用小技巧"的详细说明,这些技巧是前端工程师在日常工作中不可或缺的技能。 1. **响应式设计**:...

    MATLAB图形用户手册

    - **设计界面**:包含一个文件选择按钮用于加载数据文件、多个滑块用于调整图表参数以及一个绘图按钮用于更新图表。 - **编写回调函数**:加载数据后,根据用户通过滑块设置的参数动态绘制图表。 #### 五、GUI 调试...

    卸载顽固程序时的6个小技巧

    ### 卸载顽固程序时的6个小技巧 在日常使用电脑的过程中,我们经常会遇到一些难以卸载的软件,这些软件要么是以IE插件的形式强制安装,要么是没有提供卸载程序,甚至在卸载后还会留下一些残留文件或进程,严重影响...

    Struts应用技巧

    这种方法有效地防止了因用户多次点击导致的重复数据处理。 2. **copyProperties** Struts的`copyProperties`方法是一种便捷的方式,用于在两个对象之间复制属性。通常在ActionForm到业务对象或者反之的过程中使用...

    难得的excel教程集珍藏版,简单明了,包你学会.pdf

    通过点击列标题旁的小箭头,用户可以快速设置筛选条件,实现数据的快速查找与分析。 #### 字符替换:文本处理的便捷工具 在处理大量文本数据时,字符替换功能显得尤为重要。它可以批量修改文本中的特定字符或字符...

    easyUI 海量分页

    3. **数据请求**:当用户点击分页按钮时,EasyUI会向服务器发送包含当前页码和每页大小的请求。在后端,你需要处理这些请求并返回相应页的数据。 4. **存储过程**:"手写分页存储过程"意味着在数据库层面编写SQL...

    EXCEL常用操作技巧.docx

    首先选中包含重复数据的单元格区域,然后点击“数据”选项卡中的“删除重复值”。Excel会询问是否保留唯一的条目,确认后即可删除所有的重复项,只留下唯一的数据记录。 #### 技巧6:快速输入对号√ 在Excel中快速...

Global site tag (gtag.js) - Google Analytics