2013-03-28 3 views
0

ajax 요청 후 부트 스트랩 typeahead에 대한 결과를 반환하려하지만 작동하지 않지만 ajax 요청을 시작하지 않으면 작동하지 않습니다.부트 스트랩 유형에 대한 검색 결과가 표시됩니까?

이 작동하지 않습니다

$(".typeahead").typeahead({ 
    source: function(query, process) { 
    return $.ajax({ 
     url: "/typeahead", 
     type: "GET", 
     data: "action=" + query, 
     success: function(result) { 
     return result; // this returns an array checked with console 
     } 
    }); 
    } 
}); 

를 작동없이 아약스와 함께 :

$(".typeahead").typeahead({ 
     source: function(query, process) { 
      return ["option1", "option2", "option3"] 
     } 
    }); 
+0

아약스 URL이 맞았습니까? 그렇다면 쿼리가 송수신 될 때 예상되는 쿼리인지 확인하십시오. – user1477388

+0

@ user1477388 jeh 콘솔로 확인 했으므로 확실합니다 :) – unknown

+0

'성공'이벤트가 실행되고 있습니까? 'success'이벤트 함수에'console.log ('success');를 추가하고 점검 할 스크립트를 실행하십시오. – user1477388

답변

2

결과를 반환하는 대신 프로세스 (결과)를 반환해야합니다.

$(".typeahead").typeahead({ 
    source: function(query, process) { 
    return $.ajax({ 
     url: "/typeahead", 
     type: "GET", 
     data: "action=" + query, 
     success: function(result) { 
     return process(result); // this returns an array checked with console 
     } 
    }); 
    } 
}); 
0

설정을 한 함수에서 아약스 호출 .. 후

function typeahead() 
    { 
    $.ajax({ 
      url: "/typeahead", 
      type: "GET", 
      data: "action=" + query, 
      success: function(result) { 
      return result; // this returns an array checked with console 
      } 
     }); 
    } 

이 initilze u는 넣어 이 코드는

$(".typeahead").typeahead({ 
     source: function(query, process) { 
     var data=typeahead(query); 
     process(data); 

     } 
    }); 
관련 문제