javascript - 如何防止重复提交 <a href>

标签 javascript

大家好!

我这里有问题

我有3个

      <a href="{$baseUrl}/default/report/download-ready-prompt?id={$order.id}" name ="ahref" id="promptButton" class="button-blue printing">Prompt</a> &nbsp;

      <a href="{$baseUrl}/default/report/download-ready-cert?id={$order.id}" name = "ahref" id="certButton" class="button-blue printing withSignature">Cert</a> &nbsp; 

      <a href="{$baseUrl}/default/report/download-ready-invoice?id={$order.id}" name ="ahref" id="invoiceButton" class="button-blue printing withSignature">Invoice</a> &nbsp;

这 3 个链接在同一页面加载

如果单击一个链接,它将下载。 但如果我再次点击它,我将不会下载

因为我输入了这样的 javascript

    <script type="text/javascript"> 
    {literal}
        $(document).ready(function(){
             var submitStatus = false;
        $('a#promptButton').click(function(e){
             if (!submitStatus) {
               submitStatus = true;
        } else {
             e.preventDefault();
        }
        });
        $('a#certButton').click(function(e){
           if (!submitStatus) {
          submitStatus = true;
         } else {
        e.preventDefault();
        }
        });
        $('a#historyButton').click(function(e){
        if (!submitStatus) {
          submitStatus = true;
        } else {
          e.preventDefault();
        }
        });
        $('a#invoiceButton').click(function(e){
        if (!submitStatus) {
           submitStatus = true;
        } else {
           e.preventDefault();
        }
        });
        });
      {/literal}
      </script>

如果我想下载两次但我会阻止重复提交,我的代码是什么? 任何人都可以帮助我请:(

最佳答案

此示例代码可能有助于解决您的问题。

HTML

<a href="http://www.google.com" target="_blank" >Google</a>
<a href="http://www.yahoo.com"  target="_blank">Yahoo</a>
<a href="http://www.stackoverflow.com"  target="_blank">Stackoverflow</a>

JS:

$('a').click(function(e){
    $this = $(this);
    if($this.data('disabled') == 'true'){
        e.preventDefault();
        setTimeout(function(){$this.data('disabled', 'false')}, 10); //Enable the anchor tag after 10 milliseconds
    }else{
        $this.data('disabled', 'true');
    }    
});

演示: http://jsfiddle.net/rUrk4/6/

关于javascript - 如何防止重复提交 <a href>,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15402241/

相关文章:

javascript - express.static 破坏了 Nodejitsu 应用程序

javascript - 在由不同颜色的立方体组成的网格中,如何找到匹配的簇?

javascript - Ionic 3 指令不适用于 ionic2-autosize

javascript - 如何使用 jQuery AJAX 处理 API 调用错误?

javascript - 如何计算 JavaScript 中小数点后零的个数?

javascript - 当我滚动到不同的背景颜色时,如何使用 CSS 更改 Logo 的颜色

javascript - 如何使用相同的提交按钮调用 javascript 回发代码隐藏

javascript - 如何在 NodeJS/ExpressJS/Passport 中显示登录的用户名?

javascript - 关于js语法的小问题

javascript - api block 被调用 2 次,导致渲染组件两次,但条件得到正确检查