Select2:如何防止标签排序
当用户选择许多项目(标签)时,它们会按字母顺序自动排序。 如何使用Select2 4.0防止自动排序并保持用户的订单?
更新:
提到的“可能的dublicate问题”是针对旧版本的Select2 v3 …我问的是版本4 …它与旧版本不同,并提到答案不能解决问题。
我找到了一个适用于Select2 v4的解决方案。 它会更改项目的顺序 – 用户选择的项目将移动到最后。
$("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"); });
之前已经讨论过 Select2 3.5.2,您可以使用select2('data')
来获取订单。
$("select").select2(); $('#sayResult').click(function () { // 'data' brings the unordered list, while val does not var data = $('select').select2('data'); // Push each item into an array var finalResult = data.map(function () { return this.id; }); // Display the result with a comma alert( finalResult.join(',') ); });