@andreychumak
junior

Как вывести сначала одни элементы массива, потом другие?

Есть поиск с автозаполнением. Использую вот это плагин.
Имею такой json откуда и беру значения
[[название, брэнд, номер, категория], [название, брэнд, номер, категория], [название, брэнд, номер, категория]]

сейчас автозаполнение выдает

Категория
Название
Категория
Название
Категория
Название


Категория показывается та, в которой есть название с введенными символами.

Код js такой:

$(function(){
    $('input[name="oem"]').autoComplete({
        minChars: 4,
        // Забираю json и вывожу только 11 значений
        source: function(term, response) {
            term = term.toLowerCase();
            $.getJSON('/search.json?oem='+ term, function (data) {
                var matches = [];
                for (i = 0; i < data.length; i++)
                    if (~data[i][0].toLowerCase().indexOf(term)) matches.push(data[i]);
                response(matches.slice(0,11));
            });
        },
        // Собственно определяю стиль отображения
        renderItem: function (item, search){
            search = search.replace(/[-\/\\^$*+?.()|[\]{}]/g, '\\$&');
            var re = new RegExp("(" + search.split(' ').join('|') + ")", "gi");
            return '<div class="autocomplete-suggestion" data-category="' + item[3] + '">' + '<font color="bbbbbb" style="font-style: italic">' + 'Категория, ' + '</font>'+ item[3].replace(re, "<b>$1</b>") + '</div><div class="autocomplete-suggestion" data-detail="' + item[0] + '" data-make="' + item[1] + '" data-oem="' + item[1] + '">' + item[0].replace(re, "<b>$1</b>") + '</div>'; 
            // здесь вывожу сперва категорию item[3], потом все остальные элементы, item это элементы массива
        },
    });
});

Нужно чтобы выдавало

Категория
Категория
Категория
Название
Название
Название
Название


Подскажите как реализовать.
Возможно реализовать через метод append?
  • Вопрос задан
  • 330 просмотров
Пригласить эксперта
Ответы на вопрос 1
Stalker_RED
@Stalker_RED
Почему-бы не отсортировать как вам нужно?
matches.sort(...)
https://developer.mozilla.org/ru/docs/Web/JavaScri...
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы