2011-08-31 6 views
0

현재 jquery-ui-1.8.10을 사용 중입니다. 자동 완성 구성 요소를 사용하고 있으며 문서에서 10 개 이상의 결과를 반환하도록 구성 할 수있는 방법을 찾을 수 없습니다. 목록에는 서버에서 10 개 이상의 결과가 반환되지만 사용자는 http://jqueryui.com/demos/autocomplete/jQueryUI 자동 완성으로 사용자에게 10 개 이상의 결과가 표시되지 않습니다.

여기에 유사한 포스트이지만, 최대 나를 위해 작동하지 않습니다 그리고 그는 그가 말한다하더라도, jQueryUI에서 자동 완성 이외의 다른 구성 요소를 사용하는 것처럼 느낀다. jQuery autocomplete won't show more than 10 results

사용자에게 10 개가 넘는 결과를 표시하도록 구성 요소를 구성하려면 어떻게해야합니까?

$("#module-name-search").autocomplete({ 
     source: "service/searchForModule?langCode=" + langCode, 
     minLength: 3, 
     max: 50, 
     select: function(event, ui){ 
      $("#module-code-search").val(ui.item.id); 
      $("#module-name-search").val(ui.item.text); 

      return false; 
     } 
    }).data("autocomplete")._renderItem = function(ul, item){ 
     return $("<li></li>").data("item.autocomplete", item).append("<a style='font-size:9px;'>" + item.text + "</a>").appendTo(ul); 
    }; 
+2

_renderItem 함수를 재정의하지 않으면 작동합니까? minLength를 0으로 설정하면 JS 콘솔을 당겨 $ ("# module-name-search"). 자동 완성 ("search")을 수행하면 10 개의 결과 만 표시됩니까? – spike

+0

아직 나와 코드가 없으며 스택 오버플로가 다시 발생했습니다. 누군가가 대답 할 때 이메일을 보내도록 설정하려고합니다. 나는 픽스를 찾았고, 코드를 찾아서 일한 것에 대한 업데이트를 게시 할 것이다. – avanderw

답변

0

내 문제에 대한 해결책을 찾았습니다. 아래에 코드가 있습니다.

$("#module-name-search").autocomplete({ 
     source: function(request, response) { 
      if (searchAjax != null) { 
      searchAjax.abort(); 
     } 
     searchAjax = $.ajax({ 
       url: "service/searchForModule?langCode=" + langCode, 
       dataType: "json", 
       data: { 
        term: encodeURI(request.term), 
        iTipeProgram: $("#prog-type-input").val() 
       }, 
       success: function(data) { 
        //alert(data); 
        response(data); 
       } 
      }); 
     }, 
     minLength: 3, 
     select: function(event, ui){ 
      $("#module-code-search").val(ui.item.id); 
      $("#module-name-search").val(ui.item.text); 

      return false; 
     }, 
     open: function() { 
      $(this).removeClass("ui-corner-all").addClass("ui-corner-top"); 
     }, 
     close: function() { 
      $(this).removeClass("ui-corner-top").addClass("ui-corner-all"); 
     } 
    }).data("autocomplete")._renderItem = function(ul, item){ 
     return $("<li></li>").data("item.autocomplete", item).append("<a style='font-size:9px;'>" + item.text + "</a>").appendTo(ul); 
    }; 
관련 문제