2012-07-09 2 views
1

JQquery 자동 완성 스크립트로 어려움을 겪고 있습니다. 그것은 검색 쿼리에서 UTF8이 아닌 문자로 검색을 수행 할 때까지 제대로 작동합니다.jquery 자동 완성으로 결과가 è로 반환되지 않습니다

예를 들어 검색어 "test"가 "test", "test é"등의 결과를 성공적으로 반환하는 경우 검색 결과에 é를 추가하면 결과가 더 이상 표시되지 않습니다. (query "test é "결과가 없음).

쿼리를 수행하고 결과를 json 배열로 반환하는 PHP 스크립트를 호출하면 올바른 출력을 표시합니다. "[{"id ":"1230 ","value ":"Test \ u00e9 "}]", 그냥 HTML 페이지에 드롭 다운 결과가 더 이상 제공되지 않습니다.

이것에 대한 조언은 대단히 감사하겠습니다.

월터

+0

브라우저의 오류 콘솔에 메시지가 있습니까? – YMMD

+1

@ walter81'header ("Content-Type : application/json; charset = UTF-8"); html content type 메타 태그를 utf8로 설정 했습니까? 및 utf8로 PHP 헤더 내용 유형?, 둘 다 시도하지 않으면 당신은 조금 더 나은 당신은 목록이 표시되지 않는 것을 의미합니까? 또한이 대답 좀 봐 http://stackoverflow.com/questions/2127124/utf-8-problem-in-using-jquery-autocomplete-tags이 도움이 되길 바랍니다 :) – Val

+0

결과없이 두 헤더를 추가했습니다. 그리고 네, 목록이 보이지 않는다는 것을 의미합니다. "test"를 입력하면 모든 결과가 표시되지만 검색 문자열에 é를 추가하면 중지됩니다 ("test é"는 목록을 전혀 표시하지 않음). 이미 링크를 확인했지만 다른 문제 인 것 같습니다. – Walter81

답변

0

I - finally- found it. 내가 대체 JSON 스크립트 살았어 곳

자바 스크립트 부분에서 : 그리고, 평소처럼, 그것은 매우 간단합니다 "에 의해"Q (request.term)를 탈출 "Q : 에 encodeURI (request.term) ". 그게 내 문제를 해결했습니다!

$("#field") 
.autocomplete({ 
    source: function(request, response) { 
     $.getJSON("./ajax/json_search.php", { 
      object_type: "artists", 
      q: encodeURI(request.term) 
      }, response); 
     } 
}) 
관련 문제