2016-08-22 1 views
0

원격 데이터로드시 Select2 예제를 적용하려고하지만 json 형식이 어떻게되어야하는지 잘 이해하지 못합니다.형식 json 원격 데이터로드를위한 select2

이 예제를 사용 :

$(".js-data-example-ajax").select2({ 
    ajax: { 
    url: "http://localhost:8081/pruebas/select2/examples/jsondata.php", 
    dataType: 'json', 
    delay: 250, 
    data: function (params) { 
     return { 
     q: params.term, // search term 
     page: params.page 
     }; 
    }, 
    processResults: function (data, params) { 
     params.page = params.page || 1; 
     return { 
     results: data.items, 
     pagination: { 
      more: (params.page * 30) < data.total_count 
     } 
     }; 
    }, 
    cache: true 
    }, 
    escapeMarkup: function (markup) { return markup; }, 
    minimumInputLength: 1, 
}); 

내 JSON의 형식은 다음과 같습니다

GET http://localhost:8081/pruebas/select2/examples/jsondata.php?q=Wil 

JSON하지 :

[{"id":0,"text":"Wilmer Hilaquita"},{"id":1,"text":"Juana de Arco"}] 

당신이 검색을 시작

는 아약스는 나에게이 메시지를 전송 아무것도 찾지 못하면 json을 매개 변수 $ _GET로 받아야하고 json wi에서 작업해야하는지 알려주세요.

processResults: function (data, params) { 
    return { 
     results: data 
    }; 
} 

(이 data가의 배열이라고 가정 : 해당 매개 변수 번째, 내 데이터보다 높은 60000 개 기록

답변

0

당신이 processResults 기능을 단순화 할 수 있습니다 매김과 같은 무언가가 필요하지 않은 경우가 있음을 고려 idtext 속성을 갖는 객체). 그렇지 않은 경우 같은 함수 내에서 동일한 유형의 배열을 얻으려면 응답을 처리해야합니다.