jquery에서 keyup이 두 번 트리거되는 이유는 무엇입니까? 나는 당신이 두 번 그 보통처럼 행동하지 않을 청취자를 추가하지 않는 한Keyup 함수가 두 번 호출됩니다
$("#inputid").keyup(function(e) {
console.log("inputttt calling twice");
var userQuantity =$('#id').val();
});
jquery에서 keyup이 두 번 트리거되는 이유는 무엇입니까? 나는 당신이 두 번 그 보통처럼 행동하지 않을 청취자를 추가하지 않는 한Keyup 함수가 두 번 호출됩니다
$("#inputid").keyup(function(e) {
console.log("inputttt calling twice");
var userQuantity =$('#id').val();
});
PLS 도와 바인딩을 해제와 함께 시도하고 작동하지 누구나 method..but 떨어져있다.
동일한 요소에서 여러 이벤트 리스너가 나타나지 않도록하려면 리스너를 제거한 다음 추가하십시오. 또 다른 방법은 이벤트 리스너를 추가하기 전에 콜백 함수를 정의하는 것입니다. 아무리 횟수를 많이 사용하더라도 요소에 리스너를 한 번만 추가합니다. 아래처럼.
콜백 함수를 미리
제공var input = document.getElementById('some');
var callback = function(event) {
console.log("PRINT");
}
input.addEventListener("keyup", callback)
// input.removeEventListener("keyup", callback)
input.addEventListener("keyup", callback)
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input id="some" value="" >
콜백
var input = document.getElementById('some');
input.addEventListener("keyup", function(event) {
console.log("PRINT");
})
// input.removeEventListener("keyup", callback)
input.addEventListener("keyup", function(event) {
console.log("PRINT");
})
<input id="some" value="">
OP가 jQuery를 사용하여 리스너를 추가 할 때 어떻게 도움이됩니까? ? – charlietfl
@charlietfl 글쎄, 나는 질문의 제목에서 비슷한 생각을 가진 사람들이 도움이 될 것이라고 생각했다. 이 답변을 대답으로 받아 들일지 여부는 영업 시간까지입니다. 귀하의 의견은 이미 그녀를 도왔습니다. –
물론 .. 질문에 대답을 올리십시오. – Sudha
원래의 질문을 편집하고 주석에 코드를 추가해야합니다. 편집 버튼은 태그 바로 아래에 있습니다 –
제 생각에는 동일한 이벤트 수신기를 두 번 추가하는 것입니다. 같은 스크립트를 두 번로드하고 있습니까? – charlietfl