2011-04-06 3 views
1

여러 번 검색하여 내 코드 구조와 완벽하게 일치하는 예제를 찾습니다. 그러나 입력 상자에 표시 할 아약스 결과가 표시되지 않습니다.MVC 3 jQuery UI 자동 완성에 결과가 표시되지 않습니다.

방화 광과 함께 eva 된 모든 결과가 POST에서 표시됩니다.

여기에 자바 스크립트가 사용됩니다. 여기

<script type="text/javascript" language="javascript"> 
$(function() { 

    $("input.FamousPerson-List").autocomplete({ 
     source: function (request, response) { 
      $.ajax({ 
       url: "/FamousPeople/FPPAutoComplete", 
       type: "POST", 
       dataType: "json", 
       data: { 
        searchText: request.term, 
        maxResults: 12 
       }, 
       success: function (data) { 
        response($.map(data, function (item) { 
         return { 
          value: item.DisplayName 
         } 
        })) 
       } 
      }); 
     } 
    }); 

}); 

내가 웹에서 사용하고있는 실제 코드의 링크입니다. AutoCompleteTesting 아래 상자 중 하나에 문자를 입력하면 해당 문자를 호출 할 수 있습니다.

감사합니다.

+0

상자에 텍스트를 입력하려고했지만 성공 함수가 호출되지 않았습니다. 자유 시장 조사 : 어떤 유명 인사가 뚱뚱해 질지 내기하고 싶습니다. 나는 팝스타에게 셀룰 라이트 선물을 교환하고 싶다. – RSG

+0

잘 주셔서 감사합니다. 성공 함수가 시작되지 않는 것은 무엇입니까? 그리고 제안에 감사드립니다. 프로젝트는 오픈 소스이며 나는 아이디어를 찾고있을 것이다. –

답변

2

요청을 자세히 보았을 때 콜백 매개 변수가 추가되는 것을 알 수 있습니다. 이상하지, 그렇지? 지역 도메인 (JSONP)이 아닌 지역 AJAX 게시를하고 있기 때문입니다.

프로젝트에 jQuery 유효성 검사가 포함되어있는 것으로 나타났습니다. 유사한 질문 (일반적인 JSON 요청 대신에 요청한 JSONP 요청)을 처리하는 질문에 대한 this answer에 따르면, 이는 jQuery 유효성 검사의 알려진 문제입니다.

다른 대답으로 판단하면 jQuery의 버전을 변경하거나 jQuery 유효성 검사 (here 발견)의 패치 버전을 사용할 수 있습니다.

+0

놀라운. 부분 뷰에서 가져 오는 충돌하는 jQuery 유효성 검사 버전을 제거하면이 문제가 해결됩니다. 무리 감사. 위의 링크는 현재 작동중인 솔루션을 보여줍니다. –

관련 문제