2016-11-29 2 views
1

Это мой HTML кодSelect2 множественного выбора выбора по умолчанию не работает

<select name="age_group[]" class="form-control age_group" multiple="multiple"> 
    @foreach($age_groups as $group) 
     <option value="{{ $group->id }}">{{ $group->age_group_name }}</option> 
    @endforeach 
</select> 

И это JS

var selected = [1, 2, 3]; 
// initialize select2 for age group 
$(".age_group").select2(); 
$(".age_group").select2('val', selected); 

То, что я хочу сделать, это установить значения по умолчанию, выбранные в соответствии с предложением this пост , Но в моем коде выше я получаю только первый элемент массива как выбранный.

Может ли кто-нибудь сказать мне, что случилось с моим кодом?

Jsfiddle demo

+0

вы можете создать скрипку – Santhucool

+0

http://stackoverflow.com/a/33912045/6746555 попробовать этот – Mahi

ответ

0

Вы должны указать значение, которое необходимо выбрать.

$('select').select2().select2('val', $('.select2 option:eq(1)').val()); 

ИЛИ

Split the values before Passing to the Select2(); 
var values = //split the string ; 
$(".age_group").select2('val',values); 

Надеется, что это помогает вам.

+0

I не попробовали свой первый вариант, поскольку другой ответ сработал, но ваш второй вариант такой же, как и я. 'values' в моем случае уже является массивом. –

Смежные вопросы