2016-02-14 630 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) { 
       // ... 
      } 
     }); 

    });