2016-11-23 53 views
1

當您選擇多個項目時,它們按字母順序排序。 我們希望預先設定選擇順序而不進行排序。這意味着,如果我選擇「B」,然後選擇「A」,則多重選擇應該顯示「B」,「A」而不是「A」,「B」。如何實現這一目標?Select2多選 - 如何停止自動排序?

<select id="multiple" class="form-control select2-multiple" multiple> 
<optgroup label="Alaskan"> 
<option value="A">A</option> 
<option value="B">B</option> 
</optgroup> 
</select> 

謝謝。

+2

發佈您的代碼。 –

回答

0

沒有與選擇二v4進行soluition。它改變項目的順序 - 用戶選擇的項目被移動到最後。

$("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> 

Source