使用jQuery和Select2,“Keypress”事件无法正常工作

我有一个论坛,我在其中更改了要输入的选项卡的function。 当用户按下enter时,下一个输入字段获得焦点,并以某种方式iImanage打开focusin事件上的select2选择框,以便打开选择2框。

但是,当我选择值并按下selec2选择框中的Enter时,它不会关闭并在输入按键事件时保持打开但它会关​​闭。 当我将enter键事件更改为任何按键事件而不是select2得到关闭并且工作正常但我必须通过输入来执行此操作。

我想要的是:
当用户在select2搜索框中选择值并按下输入时,它将关闭并焦点移动到下一个输入字段或任何字段。

到目前为止我做了什么。

 $('.search-select').on("focusin",function(event) { $('#s2id_form-field-select-3').select2('open'); event.preventDefault(); }); 

使用无效的输入键事件选择2

 $('.select2-input').on("keypress", function(e) { if (e.keyCode == 13) { $("#select2-drop-mask").click(); $('#name').focus(); e.preventDefault(); } }); 

Select2与任何正在工作的按键事件

 $('.select2-input').on("keypress", function(event) { $("#select2-drop-mask").click(); $('#name').focus(); event.preventDefault(); }); 

标记

     dba->get_dropdown('register',array('id','name')); foreach($query as $key=>$value): ?> <option value="">}   

提前为错误道歉,这是我第一次使用Select2。

我想你正在寻找keydown

 $('.select2-input').on("keydown", function(e) { if (e.keyCode == 13) { $("#select2-drop-mask").click(); $('#name').focus(); e.preventDefault(); } }); 

他们有点不同 。 在这种情况下,按键不会在您的字段中插入任​​何内容。

对我来说工作

 $(document).on('keyup keydown', 'input.select2-search__field', function(e) {