2011-08-02 3 views
0

메인 페이지의 cs에있는 ArrayList를 기반으로 자동 완성 텍스트 상자를 만들려고합니다..CS arraylist를 JQuery에 전달

저는 JQuery에 상당히 익숙하며,이 페이지에서 ArrayList를 호출하는 가장 좋은 방법은 무엇일까 궁금합니다.

모든 조건을 검색 할 수 있지만 필자가 찾을 수있는 것은 스크립트를 실행하기 전에 변수에 배열을 만드는 자동 완성 예제 또는 URL 호출에 대한 모호한 참조를 만듭니다.

감사합니다.

이것은 내 newby 경험에서 지금까지 가지고있는 것입니다.

<script type="text/javascript"> 
$(document).ready(function(){ 
$("#example").autocomplete("Requests.aspx.cs"); 
    }); 
</script> 

답변

1

몇 가지 ....

당신은 Request.aspx.cs (즉 컴파일됩니다 코드 파일)를 호출하지 않습니다. 클라이언트 제공 페이지는 Request.aspx이며 호출해야합니다.

jQuery UI 자동 완성을 사용하고 있으므로 Request.aspx는 올바른 형식의 JSON 데이터로 응답해야합니다 (ID, 이름 및 값이있는 3 개의 필드 객체라고 생각합니다).

Request.aspx는 매개 변수를 받아들이도록 (내가 용어라고 생각합니다), 논리를 검색하여 JSON으로 직렬화 된 해당 조회의 결과를 반환하도록 설정해야합니다. JSON 직렬화에 도움이되는 C# 클래스가 있습니다.

당신은 이것을 달성하기 위해 알아야 할 것들이 꽤 있습니다. 다행히도 위의 내용이 도움이되기를 바랍니다.

+0

감사합니다. 시작하는 것이 좋습니다. 나는 그것이 얼마나 간단했는지/어려웠는지 알 필요가 있었다. – Scott

+0

그것은 꽤 간단합니다. 단지 많은 조각들이 있습니다. 귀하의 jQuery 서버 사이드 코드에 ASHX를 사용하는 것이 좋습니다 ... 그것은 완전한 웹 폼 페이지보다 효율적입니다. – ctorx

0

이 목적을 위해 일종의 편안한 서비스를 제공 할 수 있습니다.

1

코드 숨김이 데이터를 반환해야하는 Request.aspx 페이지에 대해 $.ajax 요청을 만들 수 있습니다. 그런 다음 jQuery 자동 완성을 사용하십시오.

편집 :
마태 복음이 제시 한 접근을 할 경우 서버 측 서비스를 만드는 방법을 설명대로, 내가 ScottGu에서이 페이지 ASP.NET AJAX 체크 아웃 제안이 자바 스크립트에서 직접 호출 당신의 끝에 JSON 처리를 제거해야합니다.