2014-07-24 5 views
3

항목을 선택할 때를 제외하고 정상적으로 작동하는 select2 (jQuery 플러그인)가 있습니다.항목 선택 후 객체로 Select2 (입력) 값

값이 잘못되었습니다.

형태 :

<form id="Teste" method="get" action=""> 
     <input type="hidden" id="e6" name="e6" class="select2" style="width: 600px;" /> 

     <input type="submit" value="Send" /> 
    </form> 

선택 2로부터 입력 - 숨겨진 (원격 데이터에 필요) - 값 [개체] : 인스턴스 선택 2위한

<input type="hidden" id="e6" name="e6" class="select2 select2-offscreen" style="width: 600px;" tabindex="-1" title="" value="[object Object]"> 

자바 스크립트를 사용 :

 function formatRes(item) { 
      return item.Text; 
     } 

     function formatSel(item) { 
      return item.Value; 
     } 

     $("#e6").select2({ 
      placeholder: "Select your supplier", 
      minimumInputLength: 0, 
      id: function(data){return {id: data.id};}, 
      allowClear: true, 
      ajax: { 
       url: "http://localhost:1396/List/_GetDropDownListSupplier", 
       dataType: 'jsonp', 
       quietMillis: 300, 
       data: function (term, page) { 
        return { 
         searchString: term, 
         pageSize: 60, 
         pageIndex: page, 
        }; 
       }, 
       results: function (data, page) { 
        return {results: data.results, more: (page * 60) < data.total }; 
       } 
      }, 
      formatResult: formatRes, 
      formatSelection: formatSel, 
      dropdownCssClass: "bigdrop", 
      escapeMarkup: function (m) { return m; } 
     }); 

선택 2에 아약스에 의해 반환 JSON 예 : 당신은 select 요소를 사용할 필요가

{"results":[{"Selected":false,"Text":"Cezar Barbara","Value":"724"},{"Selected":false,"Text":"Cezar Barbara","Value":"765"}],"total":82} 
+0

왜 사람은 아래로 합법적 인 질문을 투표거야? – Trxplz0

답변

7

:

id: function(data){return data.Value;} 

내가 직접 값을 ID로 객체를 반환하지되었다. 유래 PT에서 @mgibsonbr

감사

-2

,이 시도 :

<form> 
    ... 
    <select id="someSelect"> 
     //options 
    </select> 
    <input type="hidden" name="fromSelect" id="fromSelect" value=""/> 
</form> 

을 당신은 여기에 두 가지 옵션이 있습니다

을 1.- 직접 선택에서 가치를 얻으십시오 :

var selected = $('#someSelect').val(); 

는 2 .- 숨겨진 입력에 값을 할당하고 그 값 얻을 : 해결

$('#someSelect').on('change', function(){ 
    $('#fromSelect').attr('value', this.value); 
}); 

var selected = $('#fromSelect').val(); 
+1

원격 데이터를 사용하고 있습니다. html로 select2를 첨부 할 수 없습니다. 입력으로 만 숨김 (문서로). – Trxplz0

관련 문제