나는 클래스 clsArtistList
의 ASP 텍스트 상자가 JQuery와 UI 자동 완성 및 웹 서비스
<asp:TextBox CssClass="clsArtistList" ID="txtArtistList" runat="server"></asp:TextBox>
가 그럼 난 내 텍스트 상자의 자동 완성 기능을 만들 JQuery와-UI-1.8.16을 사용 UserControl이 내부에 위치합니다. 내가
http://www.dotnetcurry.com/ShowArticle.aspx?ID=515에서 복사 있지만
$(".clsArtistList").autocomplete({
source: function(request, response) {
$.ajax({
url: "../ArtistWS.asmx/GetAllArtists",
data: "{ 'ARTIST_NAME': '" + request.term + "' }",
dataType: "json",
type: "POST",
contentType: "application/json; charset=utf-8",
dataFilter: function(data) { return data; },
success: function(data) {
response($.map(data.d, function(item) {
return {
value: item.ARTIST_NAME
}
}))
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
alert(errorThrown);
}
});
},
minLength: 1
});
을 어떻게 작동하는지 정말 모르는이 내 웹 서비스 귀하의 이익을 위해
[WebMethod]
[ScriptMethod(ResponseFormat=ResponseFormat.Json)]
public List<Artist> GetAllArtists(string ARTIST_NAME) {
ArtistCollection coll = ArtistManager.GetAllArtists();
return coll.FindAll(a => a.ARTIST_NAME.ToLower().StartsWith(ARTIST_NAME.ToLower()));
}
입니다, 내 ArtistCollection 아티스트의 목록입니다. 아티스트 클래스는 다음과 같습니다.
public class Artist {
public string ARTIST_ID { get; set; }
public string ARTIST_NAME { get; set; }
public string ARTIST_NATIONALITY { get; set; }
public string ARTIST_INFO { get; set; }
}
코드는 작동하지 않습니다. 매번 입력 할 때마다 메시지 알림이 수신됩니다. 내부 서버 오류
감사합니다. 도움이 필요합니다.
웹 서비스가 실행에서 제거하려고? 브라우저에서 웹 서비스를 가리켜보고 다시 얻은 것을 확인해 봤습니까? –
나는 그것을 시도, 결과는 괜찮습니다. 하지만 XML 형식입니다. 설명서에는 결과가 JSON에 있어야한다고 나와 있습니다. JSON을 반환하는 방법을 알고 계십니까? –
@ HoàngLâmHuỳnh : XML을 사용할 수 있지만 클라이언트에서 결과를 구문 분석해야합니다. XML은 어떤 모습입니까? –