2013-10-20 20 views
0

我想在发送操作后禁用锚标签,以防止用户再次单击锚链接,同时请求在服务器端处理一段时间并返回响应。在请求发送到操作后禁用struts锚链接

在我的s中还有一个onclick事件:因为我需要从用户那里得到确认。

下面是我sturts锚标记的样子,

<s:a id="tokenReGen" disabled= "true" theme="encrypted" href="%{url}" onclick="return confirmTokenRegenerateAndPreventClick()"><img src="../image//Info.png" border="0"/></s:a> 

我最初以为做的是像下面的一些事情。但是,这里的问题甚至是第一次我的行为不会触发,因为我将href设置为#。可以请告诉我一个解决方案,在请求发送到操作类后,我可以禁用锚链接。

function confirmTokenRegenerateAndPreventClick(){ 

     var isConfirm = confirmTokenRegenerate(); 
     if(isConfirm){ 
      $('#tokenReGen').attr('onclick','').unbind('click'); 
      document.getElementById('tokenReGen').href = '#'; 
     } 

     return isConfirm; 
    } 

回答

0

你可以做这样的事情:

<script> 
    var clicked=false; 

    function confirmTokenRegenerateAndPreventClick(){ 
     if(!clicked){ 
      clicked=true; 
      return clicked; 
     } 
     return false; 
    }