-
dialog 열렸는지 여부 인식하기일하면서 익힌 것 2022. 4. 19. 09:26반응형
현재 맡고 있는 페이지에서, 엔터키를 입력하면 자동으로 검색이 동작하도록 설정되어 있었다.
그런데, 해당 페이지에는 다른 팝업들도 존재하는데,
수정 요청이 들어온 게 다른 팝업에서 엔터를 입력했는데, 부모창에서 검색이 돌아가는 현상이다.
이를 해결하기 위해서는, 다른 팝업이 열렸을 때는 검색이 돌아가면 안된다.
하여 구글링을 하다가 괜찮은 걸 발견했다.
let chkOnPopup = 0; //팝업 열림 인식 $(function () { $("#팝업이름").dialog({ open: function (event, ui) { chkOnPopup = 1; } }); }); //팝업닫힘 인식 $(function () { $("#팝업이름").dialog({ close: function (event, ui) { chkOnPopup = 0; } }); }); // 검색기능 수행할 function (function(){ document.addEventListener('keydown', function(e){ const keyCode = e.keyCode; if(chkOnPopup == 0){ if(keyCode == 13){ // Enter key db select 수행할 함수(); } } }) })();
function으로 해당 dialog가 열렸는지 닫혔는지 인식하는 방식인데,
속성의 open과 close로 인식이 되는 듯 하다.
거기에 값을 저장할 chkOnPopup 변수를 하나 선언해서
변수값이 0일 때, 즉 팝업이 닫혀 있을 때만 동작하도록 수정해주어 현상을 해결했다.
반응형'일하면서 익힌 것' 카테고리의 다른 글
프리랜서 종합소득세 참고용 기록 (0) 2023.09.02 [mysql] excel 활용 insert 문이나 update문 여러개 쉽게 만들기 (0) 2022.05.21 jquery 셀렉터 와일드카드 (0) 2022.04.28 팝업 호출 시 스크롤 맨 위로 이동시키기 (0) 2022.04.19