간단한 회원가입폼을 작성하던 도중 ID중복체크를 위해 jqeury에 keyup이벤트를 사용하였다.
크롬에서 id에 입력을 하던도중 (id에 focus가 있는상태) 다른창을 클릭하면 keyup이벤트가 다시한번 발생하는 것이다.
그냥 둬도 기능상에 문제는 없지만, DB조회를 한번더 하므로.. 원인을 찾아본느데..
자료도 없을뿐더러, 잘 안되네.. 임시방편으로 발생하는 이벤트 KEYCODE값을 확인해보니 229번????
약간 버그같기도 하다. IE에서는 발생하지 않는데 크롬에서만 발생한다. (내가 확인한바로)
임시방편으로 아래와 같이 처리하였다.
더 좋은 방법이 있으면 댓글 부탁드립니다.
$("#id").keyup(function(e){ if(this.value.length > 3){ // jquery버그? focus를 잃을때 발생한다.. 원인불명-_- //if( e.keyCode == 229 ) return; $.ajax({ url: './idDupCheck', data:{userId:this.value}, success: function(data) { if( data == 0 ){ $("#idInfo").html("사용할 수 있는 ID입니다. ") } } }); }else{ $("#idInfo").html("ID는 4글자이상 입력하십시오."); }; });
'웹개발' 카테고리의 다른 글
CSS를 이용한 그라데이션 표현하기. (0) | 2012.08.16 |
---|---|
mybatis xml은 hot deploy가 안되나?.. (2) | 2012.06.04 |
[ExtJs]그리드 동적컬럼 변경하기 / grid dynamic column (0) | 2012.05.23 |
[ExtJs4] grid 데이터 없음 표시하기 (0) | 2012.04.09 |
[ExtJs] grid renderer에서 다른 컬럼값 참조하기 (2) | 2012.03.30 |