Имейте необходимость объединить 2 выбора select2 в один - PullRequest
0 голосов
/ 29 марта 2019

Я использую Select2 с вызовом AJAX. Вызов AJAX отображает коллекцию выбора (фактически столбцы базы данных). Последующий 2-й вызов AJAX отображает отдельный список значений, отключая первый выбор. Как я могу стилизовать или представить половину выбора, а затем отобразить второе значение в одном классе "select2-selection__choice", чтобы тег мог удалить их оба?

Я пытался использовать: templateResult: formatChoices, processResults: function (data) {} Но я не могу делать то, что пытаюсь сделать.

ajax: {
        url: 'http://localhost:9999/geoproxy/crash-columns/',
        dataType: 'json',
        data: function (params) {
          var lastSelection = getLastSelection();
          //console.log(getLastSelection());  
          var query = {
            q: params.term || "",
            page: params.page || 1,
            previous: lastSelection.name,
            previous_type: lastSelection.type
          }
          // Query parameters will be ?previous=[previous]&previous_type=[previous_type]
          return query;
        }
      }
    });

и функция getLastSelection ():

function getLastSelection() {
      var lastSelection = { name: "unknown", type: "none", dataType: "unknown" };
      var selection = $("#column-search").select2('data');
      if (!$.isEmptyObject(selection)) {
        lastSelection.name = selection[selection.length - 1].name;
        lastSelection.dataType = selection[selection.length - 1].dataType;
        lastSelection.type = selection[selection.length - 1].type;
      }
      return lastSelection;
    }

Я пытаюсь подражать что-то вроде этого:

Пример того, что я пытаюсь сделать

...