2017-04-16 5 views
0

onKeyDown에의 텍스트 입력 키의 가압을 검출 제가JS() 함수 인라인

<input name='blah[]' onkeydown="itemKeyDown(this)"> 

는 itemKeyDown() 함수에 어떤 키를 눌렀는지 검출하는 것이 가능하다 다음 했는가?

내가 가진 일반적인 접근 시도 :

e.keyCode || e.which 

을하지만 undefined를 반환합니다.

참고 : 나는이 텍스트 필드의 복사본을 많이 생성하므로 동적으로 jQuery 방법을 사용할 수 있지만 HTML 코드 (태그 내부)에 함수 호출을 특별히 첨부해야했습니다. 생성 된 필드는 함수 호출을 상속합니다. 나는 모든 것이 생성 된 텍스트 필드에 청취자를 바인드해야한다.

답변

1

그런가요?

function itemKeyDown(e) { 
 
    console.log(e.keyCode || e.which); 
 
}
<input name='blah[]' onkeydown="itemKeyDown(event)">

+0

쓰레기가 좋아 지금은 알고있다. 나는 이벤트 geesh 대신 인수에서 "this"를 사용했습니다. 감사합니다. manGot은 itemKeyDown (this, event)을 사용하여 작동합니다. – BrownChiLD

1

<input name='blah[]' onkeydown="itemKeyDown(this)">

는 이벤트를 얻기 위해 DOM 요소 (입력)

을 대표 onKeyDown에이 키워드가 이벤트에 대한 정보를 전달하지 않습니다 데이터와 같은 이벤트 키워드를 전달해야합니다 :

이 일을 일부러 왜

<input name='blah[]' onkeydown="itemKeyDown(event)"> 
 

 
<script> 
 
function itemKeyDown(e) 
 
{ 
 
    console.log(e.keyCode) 
 
} 
 

 
</script>