2016-09-20 3 views
0

내 select2 데이터 항목에 텍스트 속성을 추가하고 검색 할 수 있습니다.두 가지 속성에서 select2 검색

var data : 
[ 
    { id : 1, text : 'Item 1', description : 'Long text description for item 1' }, 
    { id : 2, text : 'Item 2', description : 'Long text description for item 2' }, 
    { id : 3, text : 'Item 3', description : 'Long text description for item 3' }, 
] 

내가 선택 2 내가 입력의 설명 속성 값과 일치하는 텍스트를 입력하면 결과를 찾을 수 있도록하려면 :

예를 들어 나는이 데이터를 가지고있다.

할 수 있습니까?

미리 감사드립니다.

+0

처럼 사용하는 것입니다. select에는 값과 설명 만 있기 때문에 텍스트 정보를 저장할 곳은 어디입니까? –

+0

잘 모르겠다. 어쩌면'data-description' attribuch – T00rk

+0

에서 당신은 자신 만의 플러그인 버전을 작성해야한다. 선택 및 사용자 정의 검색 옵션의 html 버전에서 select2 마크 업에 data- * 속성을 설정할 버전입니다. 이 기능은 현재 지원되지 않습니다. 표준 선택에 대한 기본 검색 옵션에 대한 좋은 대답을 보았지만 삭제되었습니다. –

답변

0

이 솔루션은 사용자 정의 정규를 작성하고 선택 2가 기본이 선택에 대한 올바른 HTML 태그와 함께 작동이

$('.select2-typeahead').select2 
({ 
    data : 
    [ 
     { id : 1, text : 'Item 1', description : 'Long text description for item 1' }, 
     { id : 2, text : 'Item 2', description : 'Long text description for item 2' }, 
     { id : 3, text : 'Item 3', description : 'Long text description for item 3' }, 
    ], 
    matcher : function(params, data, item) 
    { 
     if ($.trim(params) === '') 
     { 
      return data; 
     } 

     if(data.toLowerCase().indexOf(params.toLowerCase()) > -1 || item.description.toLowerCase().indexOf(params.toLowerCase()) > -1) 
     { 
      return data; 
     } 

     return null; 
    }