2016-07-20 3 views
0

select2 드롭 다운이 있습니다. 간단한 자바 스크립트select2 텍스트 상자의 Keypress 이벤트가 작동하지 않습니다.

$(document).ready(function() { 
    console.log("ready!"); 
    $(".eselect2").select2(); 
    $('.select2-search__field').on("keydown", function(e) { 
        console.log(e.keyCode); // nothing happens 
      if (e.keyCode == 13) { 
       } 
     }); 
}); 

<select class="eselect2" type="text" id="qename" style="width: 390px;"> 

        <option value="1">NY</option> 
      <option value="2">MA</option> 
      <option value="3">PA</option> 
      <option value="4">CA</option> 
       </select> 

I는 입력 필드에 대한 키 누름과 연관된 이벤트를 갖는다. 이후 select2의 드롭 다운 화살표를 클릭 할 때마다 텍스트 상자가 파괴되고 다시 생성되므로 해고되지 않습니다. 명확성을 위해 바이올린을 첨부했습니다. http://jsfiddle.net/sizekumar/ckfjzkhj/

답변

0

편집 : 이것은 문제를 해결하지 못합니다.

나는 중복이를 호출하지 것이다, 그러나 나는이 대답을 직접 적용 생각 : https://stackoverflow.com/a/30697173/5948237

$('.select2-input').on("keydown", function(e) { 
     if (e.keyCode == 13) { 
      } 
}); 
+0

이것은 사용했지만 작동하지 않는 코드입니다. 새 select2 드롭 다운에는 select2-input 클래스가없는 요소가 없으며 입력 요소가 파괴되어 동적으로 작성됩니다. – Sathish

0

정말 jQuery를 누르기 이벤트가 input.select2-search__field 요소에 발생하지 않습니다. 하지만 순수 js 이벤트 않습니다. 이 코드는 나를 위해 작동합니다

document.getElementsByClassName('select2-search__field')[0].onkeypress = function(evt) { console.log(evt); } 
관련 문제