2011-11-21 4 views
0

안녕하세요.이 질문과 관련된 모든 질문을 보았지만 해결책을 찾지 못했습니다. jquery UI 자동 완성 함께 일하고 있습니다. 내 시나리오는 다음과 같습니다.jquery 사용자 정의 자동 완성이 정확히 작동하지 않습니다.

확인란이 있습니다. 이 옵션을 선택하면 ajax 요청이 서버로 전송되어 데이터베이스에서 정보를 가져 와서 json 인코딩 데이터를 반환합니다. 성공 함수에서 jquery 자동 완성을 호출하고 원본에서 내 ajax 요청에 의해 반환 된 데이터를 제공합니다. 내 텍스트 상자에 몇 가지 일을 쓰기 시작하면 get 요청이

http://localhost/project/module/controller/index/%5B%22Mobile%22,%22Watch%22,%22Lamps%22,%22Harry%20Potter%22,%22Suitcase%22,%22Halloween%22,%22Xmas%22,%22Multiple%22,%22oil%22,%22Empty%20Keywords%22,%22iphone%20theme%22,%22Edit%20theme%22,%22Final%20Theme%22%5D?term=mo 

처럼 아약스 요청에서 돌아와 아무 일도 발생하지 않습니다 내 모든 옵션을 가진 전송 (내가 불을 지르고 콘솔 탭에서 볼 수 있습니다). 자동 완성으로 표시된 옵션은 없습니다.

<input type="checkbox" name="prebuilt-Themes" id="prebuilt-Themes" onclick="get_all_themes();"> 

텍스트 상자

<input type="text" id="themes" style="display: none;" class="ui-autocomplete-input"> 

와 Ajax 요청을 처리하는 기능을 다음과 같이 내 코드는

function get_all_themes() 
{ 

    if($("#prebuilt-Themes").is(':checked')) 
    {  
    $('#themes').show(); 
    $.ajax({ 
      type:'POST', 
      //data:({string:'abc'}), 
      url: "<?= $this->baseUrl(); ?>/module/controller/getallthemes", 
      success:function(data) 
      { 
       $(function() { 
       $("#themes").autocomplete({ 
        source: data 

         }); 
       }); 
      } 
     }); 
    } 


} 
내 Ajax 요청에서받은 데이터는이

처럼 보이는

["Mobile","Watch","Lamps","Harry Potter","Suitcase","Halloween","Xmas","Multiple","oil","Empty Keywords","iphone theme","Edit theme","Final Theme"] 

ybody는 나의 것을 인도한다 나는 잘못하고있다?

답변

1

당신은 ID, 라벨 JSON 형식으로 아약스 응답을해야하고, 값과 같이 :

[ { "id": "Luscinia svecica", "label": "Bluethroat", "value": "Bluethroat" }, { "id": "Motacilla flava", "label": "Blue-headed Wagtail", "value": "Blue-headed Wagtail" }, { "id": "Cyanistes caeruleus", "label": "Blue Tit", "value": "Blue Tit" }, { "id": "Monticola solitarius", "label": "Blue Rock Thrush", "value": "Blue Rock Thrush" }, { "id": "Anas discors", "label": "Blue-winged Teal", "value": "Blue-winged Teal" }, { "id": "Merops persicus", "label": "Blue-cheeked Bee-eater", "value": "Blue-cheeked Bee-eater" }, { "id": "Tarsiger cyanurus", "label": "Red-flanked Bluetail", "value": "Red-flanked Bluetail" } ] 
관련 문제