2013-03-11 1 views
2

id = "cmp"인 inputType = "text"구성 요소가 있다고 가정합니다. JS 파일에서 특정 이벤트 제거

, 내 JSP 파일에서

$("input[type='text']").bind('keypress', function(e) { 
//Case 1 
}); 

,

$("#cmp").keypress(function() { 
    //Case 2 
}); 

는 지금은 하나의 키 누르기 이벤트를 제거해야합니다. js 파일에서 등록 된 id = "cmp"에 대한 keypress 이벤트를 제거 할 수 있습니까? 그러나 jsp 파일에서 등록 된 이벤트는 제거하지 말아야합니다.

참고 : 내 요구 사항에 따르면 .js 파일을 변경할 수 없습니다.

답변

0

당신이 이벤트 Jquery OFf

오프() 메소드는 CSTE 연구진은 부착 된 이벤트 핸들러를 제거를 제거하는 JQuery와 방법의 off()을 사용할 수 있습니다. 자세한 내용은 해당 페이지 에서 위임 된 직접 연결된 이벤트에 대한 설명을 참조하십시오. 특정 이벤트 처리기는 이벤트 이름, 네임 스페이스, 선택기 또는 처리기 함수 이름의 조합을 제공하여 요소에서 제거 할 수 있습니다. 인수가 여러 번 필터링되면 제공된 모든 인수가 일치해야합니다 (이 경우 이벤트 처리기가 제거되어야 함).

$('#cmp').off('keypress'); 
0

오프 사용 off()

: 이벤트 핸들러를 제거합니다.

$('#cmp').off('keypress'); 
0

당신은 이벤트가 원래 부착하고 사용하는 jQuery를 어떤 버전의 방법에 따라 하나 .unbind() 또는 .off() (jQuery를 1.7+)를 사용하는 것이 좋습니다. 당신이 이벤트 처리기를 바인딩하는 원래의 위치를 ​​수정할 수있는 경우

// Prior to jQuery 1.7 
$("#cmp").unbind("keypress"); 

// jQuery 1.7+ 
$("#cmp").off("keypress"); 

, 당신은 또한 만 특별히 명명 된 이벤트를 제거하는 event namespaces을 사용할 수 있습니다.

// Original binding 
$("#cmp").on("keypress.someName", function() { 
    ... 
}); 

// Unbinding 
$("#cmp").off("keypress.someName"); 

EXAMPLE