Откройте выпадающий список Select2 с помощью JS click()

#javascript #jquery #jquery-select2

#javascript #jquery #jquery-select2

Вопрос:

Я попытался имитировать щелчок с помощью функции .click() для каждого элемента внутри контейнера, включая сам контейнер. Выпадающий список не откроется. Щелчок мышью работает так, как и должно быть.

 <div class="select2-container select2-allowclear editor s-LookupEditor valid" id="s2id_AbCd_Q_CustomerEditDialog22_CstId">
<a href="javascript:void(0)" class="select2-choice" tabindex="-1">   
    <span class="select2-chosen" id="select2-chosen-2">Peter Smith</span>
    <abbr class="select2-search-choice-close"></abbr>   
    <span class="select2-arrow" role="presentation">
        <b role="presentation"></b>
    </span>
</a>
<label for="s2id_autogen2" class="select2-offscreen">Customer</label>
<input class="select2-focusser select2-offscreen" type="text" aria-haspopup="true" role="button" aria-labelledby="select2-chosen-2" id="s2id_autogen2">
 

Комментарии:

1. Пожалуйста, включите весь соответствующий код (jquery) и сделайте рабочий фрагмент проблемы. Это можно сделать, отредактировав вопрос и нажав <> кнопку

Ответ №1:

Чтобы открыть экземпляр Select2 программно, вызовите open для него метод:

 $('select').select2(); // initialise

$('select').select2('open'); //open 
 <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.1.0-beta.1/dist/css/select2.min.css" rel="stylesheet" />
<script src="https://cdn.jsdelivr.net/npm/select2@4.1.0-beta.1/dist/js/select2.min.js"></script>
<select>
  <option>Please select</option>
  <option>Foo</option>
  <option>Bar</option>
</select>