2016-02-14 626 views
0

所以我有一個click事件如何讓jQuery點擊事件恢復到原來的狀態?

 $('[data-assetid]').click(function(){ 
      $.ajax({ 
       url : '/somemethod', 
       method : 'POST', 
       data : { pageid : $('input[name="pageid"]').val() }, 
       success : function (retobj) { 
        // ... 
       } 
      }); 

     }); 

是在元素都默認點擊事件(<img> S,<a> S等)。我在success回調結束時要做的事情是刪除我首先附加的點擊事件,以便它回退到原來的狀態。我該怎麼做呢?

+0

檢查[jQuery.unbidn的拉斯例子()文檔。 ](http://api.jquery.com/unbind/)。這應該是你正在尋找的。[jQuery.bidn()docs](http://api.jquery.com/bind/)可能是有用的太。 –

回答

3

您可以使用jQuery.onecheck API);它將一旦綁定,然後在第一次調用後解除綁定

像這樣:

$('[data-assetid]').one("click", function(){ 
     $.ajax({ 
      url : '/somemethod', 
      method : 'POST', 
      data : { pageid : $('input[name="pageid"]').val() }, 
      success : function (retobj) { 
       // ... 
      } 
     }); 

    });