2016-07-28 1 views
3

Я пытаюсь использовать select2 в первый раз.Как передать данные в select2 version> 4.0

Я хотел бы иметь свои данные из статического массива. Не могли бы вы мне помочь?

Вот мой код:

$(document).ready(function() { 

    var names = [{"id":"1","name":"Adair,James"} 
      , {"id":"2","name":"Anderson,Peter"} 
      , {"id":"3","name":"Armstrong,Ryan"}]; 

    $("#e10_2").select2({ 
     processResults: function(){ 
      return { 
      results: $.map(names, function(obj) { 
       return { id: obj.id, text: obj.name }; 
      }) 
      }; 
     } 
    }); 

}); 

ответ

2

Вы можете использовать data возможность передать массив в select2 как:

$("#e10_2").select2({ data: names }); 

Если вы не имеете text атрибут адаптировать массив проверьте часть документации, сделанной для этой цели The id and text properties are strictly enforced, например:

$(function() { 
    var names = [{"id":"1","name":"Adair James"} 
       , {"id":"2","name":"Anderson Peter"} 
       , {"id":"3","name":"Armstrong Ryan"}]; 

    var data = $.map(names, function (obj) { 
     obj.id = obj.id; 
     obj.text = obj.name; 

     return obj; 
    }); 

    $("select").select2({width: '100%',data: data}); 
}); 

Надеюсь, что это поможет.

$(function() { 
 
    var names = [{"id":"1","name":"Adair James"} 
 
       , {"id":"2","name":"Anderson Peter"} 
 
       , {"id":"3","name":"Armstrong Ryan"}]; 
 

 
    var data = $.map(names, function (obj) { 
 
    obj.id = obj.id; 
 
    obj.text = obj.name; 
 

 
    return obj; 
 
    }); 
 

 
    $("select").select2({width: '100%',data: data}); 
 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<script src="https://select2.github.io/dist/js/select2.full.js"></script> 
 
<link href="https://select2.github.io/dist/css/select2.min.css" rel="stylesheet"/> 
 
<select></select>

+0

У меня нет свойства текста в моих данных, поэтому он не будет показывать какие-либо данные – Vishal

+0

Ok @Vishal я вижу .. вы должны просто адаптировать массив, проверить мое обновление. –