2010-08-20 8 views
2

필드가 변경 될 때마다 함수를 실행하려고합니다.jQuery keypress() 이벤트 리스너 문제

<div id="text"></div> 
<textarea id="stuff"></textarea> 

<script type="text/javascript"> 
    $("#stuff").keypress(function() { 
     $("#text").text($("#stuff").val()); 
    }); 
</script> 

이 작동하지만, 뒤에 항상 하나 개의 문자입니다 : 그냥 내가 간단한 textarea 및 사업부를 사용하고, 시작합니다. textarea에 "Hello"라고 입력하면 div는 "Hell"이라고 말합니다.

내가 뭘 잘못하고 있니?

답변

4

해결할 수있는 .keyUp()을 사용해보세요.

+0

바보 나. 그것은 그것을 고쳤다. – Aillyn

+1

itym keyup(). 총액 사항... – cbmanica

1

keypress 이벤트는 발생 된 keypress를 기준으로 텍스트 영역을 업데이트하기 전에 발생합니다. 그렇지 않으면 처리기가 이벤트를 취소 할 수 없습니다.

여기를 참조하십시오 : http://jsfiddle.net/zDMbJ/ 누르면 눌린 키가 'A'이면 임의로 이벤트를 취소합니다.

0

이 시도 :

<script type="text/javascript"> 
    $("#stuff").keyup(function() { 
     $("#text").html($(this).val()); 
    }); 
</script> 

http://jsbin.com/ibido3/edit