2015-12-08 3 views
0

Я получаю данные от ajax и заполняя его выбором. Теперь как сделать выбор по умолчанию в этом.Select2 multiple не может установить значение по умолчанию

Вот мой Аякс

var productLists =[]; 
$.when(http_get('admin/offer/data/sync')).then(function(response){ 

    //returns a products array 

    $.each(response.products, function(i, item){ 
      var product = {}; 
      product['id'] = item.id; 
      product['text'] = item.product_name; 
      productLists[i] = product; 
    }); 
}); 
$('#sel_product').select2({ 
    data: productLists 
}); 

Чтобы получить seleted значения я могу сделать еще один список АЯКСА

Или я могу напечатать <otpion value="" selected="selected"> в HTML с PHP.

Итак, как мне сделать выбор по умолчанию с помощью select2?

ответ

1

Вам необходимо переместить вызов в .select2() в обратный вызов, поэтому он будет инициализирован после получения данных.

var productLists = []; 
$.when(http_get('admin/offer/data/sync')).then(function(response){ 
    //returns a products array 
    $.each(response.products, function(i, item){ 
      var product = {}; 
      product['id'] = item.id; 
      product['text'] = item.product_name; 
      productLists[i] = product; 
    }); 

    $('#sel_product').select2({ 
     data: productLists 
    }); 
}); 
+0

Нет проблем с инициализацией данных. Мне нужно знать, как установить значения по умолчанию 'selected = 'selected''. –

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