알 수 없는 jQuery의 이상 동작
오늘 코딩 작업을 하다 알게 된 것인데.. 이런 경우다.
쇼핑몰에서 상품문의와 사용후기를 jQuery load를 이용해 불러오는데.. 당연히 각각 페이징이 있다. 사용후기가 먼저 나오고 상품문의가 나오는 구조에서 페이징에는 pg_page라는 class를 가지고 있다. pg_page 에 click 이벤트를 지정해줬는데.. 이상하게 먼저 나오는 사용후기의 페이지 넘버를 클릭하면 아래쪽 상품문의 페이지도 함께 변경되는 것이다. 각각 데이터를 load 할 때 사용하는 php 파일은 다른데도 말이다. 더 웃긴 건 href 값 자체가 바뀌어 버린다는 것이다.
alert 함수를 넣어서 테스트를 해보면 사용후기 쪽의 페이지를 클릭하면 alert 함수가 두번이 실행되는 걸 볼 수가 있었다. 이전에 form 데이터가 두번 넘어가는 것과 비슷한 오류가 아닌가 싶은데.. ajax 등을 사용할 때 이 부분은 특히 유의를 해야할 것 같다. 사용후기와 상품문의 페이징에 추가되는 class를 다른 것으로 변경하고 각각 class에 click 이벤트를 지정해수 문제를 일단 해결했는데 좀 특이한 경우인 것 같다. 아니면 내가 잘못 사용하고 있는 것일 수도 있다. 검색을 해봐도 그런 내용은 없는 듯 하고.. 암튼 ajax를 사용할 때는 두번씩 되는 거!! 이거 주의해야할 것 같다.