Select2 отменить выбор элемента при вводе: нажатие клавиши из списка параметров Dynami c - PullRequest
0 голосов
/ 29 мая 2020

Select2 имеет раскрывающийся список Dynami c, состоящий из 'UL' с 'LI', и когда вы нажимаете Enter на невыбранном элементе, он становится выбранным.

Я хотел бы сделать обратное, если он выбран и нажата клавиша ввода, отмените выбор.
(я знаю, что CTRL + пробел снимет выделение)

Пока все, что я пробовал, не удалось, и я думаю, это потому, что он был уничтожен слишком рано ?

Я пробовал

 1. making a jquery loop on the 'UL' and putting events on each 'LI'
 2. jquery keypress even targeting $('#UL_Id li').on('keypress' doit ...
 3. manually adding onkeypress="doItFucntion()" attribute

$(document).ready(function() {
  var select2Orginal = $(".select2Control");
  select2Orginal.select2();
});
<link href="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/css/bootstrap.min.css" rel="stylesheet"/>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<link href="https://cdn.jsdelivr.net/npm/select2@4.0.13/dist/css/select2.min.css" rel="stylesheet"/>
<script src="https://cdn.jsdelivr.net/npm/select2@4.0.13/dist/js/select2.min.js"></script>


<div class="form-group">
  <label for="select2Control">
    Pick People
  </label>
  <select id="select2Control" class="select2Control form-control" name="things[]" multiple="multiple">
    <option value="1">Andy</option>
    <option value="2">Bob</option>
    <option value="3">Russ</option>
    <option value="4">Dave</option>
    <option value="5">Matt</option>
    <option value="6">Adam</option>
  </select>
</div>
...