2016-05-12 28 views
0

可以使用jquery刪除外部應用的庫和元素。 我有一個input,我根據點擊條件更改框的類。如果輸入有類郵件,我需要附上一個.mailgun_validator(),如果這個類是文本,我需要解除它。以下是我的代碼片段:使用jquery刪除輸入框上的外部處理程序/庫

$('.selection-input-box').on('change',function(){ 
     if($(this).hasClass('email')) { 
      // Insert the mailgun validator 
      $(this).mailgun_validator({ 
       api_key: 'XXXXXXXXXXXXX', 
       success: validation_success, 
       error: validation_error 
      }); 
     } else { 
      // Remove the handler. Unbind doesn't work here 
      $(this).unbind('mailgun_validator'); 
     } 
    }); 

這可能嗎?

+0

「this'是否有任何其他自定義事件分配給它?如果否,您可以簡單地克隆它並替換它 - '$(this).replaceWith($(this).clone())' – eithed

+0

@eithedog在選擇單選按鈕時,輸入框類的值發生變化。條件就是這樣設定的。除此之外,除驗證外,沒有自定義事件分配給它。 – Aditya

回答

0

mailgun_validator插件本身沒有方法刪除它。我在code中看到它使用注目事件。您可以註銷元素上的所有聚焦事件:

$(this).off('focusout');