Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Select2: How to prevent tags sorting

Tags:

When user selects many items (tags), they are automatically sorted alphabetically. How to prevent automatic sort and keep user's order using Select2 4.0?

Update:

The mentioned "possible dublicate question" is for the older version of Select2 v3... I ask about version 4... It differs form older ones and mentioned answers dosn't solve the problem.

like image 405
Ivan Z Avatar asked Jul 15 '15 13:07

Ivan Z


1 Answers

I've found a solution that works with Select2 v4. It changes the order of items - item selected by user are moved to the end.

$("select").select2();    $("select").on("select2:select", function (evt) {    var element = evt.params.data.element;    var $element = $(element);        $element.detach();    $(this).append($element);    $(this).trigger("change");  });
<link href="//cdnjs.cloudflare.com/ajax/libs/select2/4.0.0/css/select2.css" rel="stylesheet"/>    <script src="//cdnjs.cloudflare.com/ajax/libs/jquery/2.1.3/jquery.js"></script>  <script src="//cdnjs.cloudflare.com/ajax/libs/select2/4.0.0/js/select2.js"></script>    <select style="width: 500px;" multiple="multiple">    <option>two</option>    <option>four</option>    <option>six</option>  </select>

Update

The solution was found here: github.com/select2/select2/issues/3106. Its author is kevin-brown.

like image 186
Ivan Z Avatar answered Sep 20 '22 06:09

Ivan Z