2016-08-27 4 views
-1

내 페이지에 Select2, ajax 데이터가 제공됩니다. 이전에 선택한 옵션의 에디션을 구현해야합니다 ... 이제 initselection을 통해 이전 옵션을 표시 할 수 있습니다. 불행히도 필기를 시작하고 새 값을 선택하면 이전 옵션이 제거됩니다.Preserve InitSelection -Select2

사용자가 제거 할 때까지 이전 데이터를 유지할 수 있습니까?

코드 :

$("#FAMILIAS").select2({ 
    language: "pt", 

    ajax: { 
     url: "GET_JSONDATA.php", 
     dataType: 'json', 
     type: 'POST', 
     delay: 600, 
     data: function (params) { 
      return { 
      q: params.term, // search term 
      page: params.page, 
      _FORN:1, 
      }; 
     }, 
     processResults: function (data, params) { 
      params.page = params.page || 1; 
      currentRequestFamilias=null; 

      return { 

      results: data.items, 
      pagination: { 
       more: (params.page * 30) < data.total_count 
      } 
      }; 
     }, 
     cache: true, 
     beforeSend : function() 
     {   
      if(currentRequestFamilias != null) 
      { 
       currentRequestFamilias.abort(); 
      } 
      if(!FornecedorEscolhido()) 
      { 
       return false; 
      } 

     }, 

    } 
    , 
    initSelection : function (element, callback) { 
     LoadInicialValues(); 
     if(FamiliasIniciais_==null) 
      return; 
     callback(FamiliasIniciais_); 
    }, 
    escapeMarkup: function (markup) { return markup; }, 
    minimumInputLength: 1, 
    templateResult: formatoItemSelecionado, //id 

}); 

답변

0

난 그냥 그렇게하는 한 가지 가능한 방법을 찾을 수 있습니다. 는이 간단한

var SELECT2=$("#SELECT2_CMB"); 
var newState = new Option(text, id, true, true); 
SELECT2.append(newState).trigger('change'); 

는 희망이 도움이

그래서 당신이 필요합니다 .... 사람들을위한 유용한, 시작에서 그 필요의 데이터를로드하고 사용자에게 추가하거나 데이터를 삭제하는 방법을 줄 수도 누군가

최고 감사합니다.

관련 문제