2013-09-06 1 views
2

Я использую плагин jquery select 2. http://ivaynberg.github.io/select2/#ajaxjquery select2 плагин, по умолчанию по умолчанию с выбором ajax

У меня есть работа, работающая, и я могу найти результаты и выбрать все в порядке. Но когда я перезагружаю страницу, я хочу, чтобы предыдущий выбор был заполнен. У меня есть идентификатор и то, что я хочу отображать, но, похоже, способ сделать это - использовать вызов initSelection.

Это кажется немного излишним, так как у меня уже есть текст, я хочу показать ....

$(".user-search").select2({ 
    minimumInputLength: 2, 
    ajax: { 
     url: "https://stackoverflow.com/users/search", 
     dataType: 'json', 
     data: function (term, page) { 
      return { keyword: term }; 
     }, 
     results: function (data, page) { 
      return { results: data }; 
     } 
    } 
}); 

<input name="user_id" class="user-search" type="text" style="width:100%" value="{{ $user->id }}" /> 

Есть ли какой-нибудь способ, я могу сделать $ user-> имя? возможно установить его на входе в качестве данных-дисплей ....

ответ

1

Я сделал следующее ....

...code from the opening question, 
initSelection: function(element, callback) { 
    var id=$(element).val(); 
    if (id!=="") { 
     callback({id:id, text : $(element).attr('data-display')}); 
    } 
} 

и сделал

<input..... data-display="{{ $user->name }}"> 

он работает, является то, что хороший способ?