Я не знаю, что не так с этим кодом.предупреждение показывает, что данные вернулись из веб-службы, но автозаполнение все еще не показывает данные.Я использую ASP.net 2.0 и Google JQuery ссылку
$(document).ready(function() {
$.ajax({
type: "POST",
url: "http://localhost/WebService/Service.asmx/getlist2",
dataType: "json",
data: "{}",
contentType: "application/json; charset=utf-8",
success: function(data) {
alert("getlist 2");
alert(data);
$('#project1').autocomplete({
minLength: 2,
source: data,
focus: function(event, ui) {
$('#project1').val(ui.item.TagName);
alert(ui.item.TagName);//no alert is fired here
return false;
},
select: function(event, ui) {
$('#project1').val(ui.item.TagName);
//$('#selectedValue').text("Selected value:" + ui.item.TagID);
return false;
}
});
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
alert(textStatus);
}
});
});
и метод веб-службы
[WebMethod]
[System.Web.Script.Services.ScriptMethod(ResponseFormat = ResponseFormat.Json)]
public List<Tag> getlist2()
{
<Tag> tagscollection = new EntitiesCollection<Tag>();
ProcessTagList getlisttags = new ProcessTagList();
string strtag = "";
Tag tag = new Tag();
tag.TagName = strtag;
tag.UniqueName = strtag;
getlisttags.OTag = tag;
getlisttags.Invoke();
tagscollection = getlisttags.OTagsCollection;
;
List<Tag> a = new List<Tag>();
foreach(Tag tagc in tagscollection)
{
a.Add(tagc);
}
return a;
}
данные, отображаемые в firebug:
[{ "__ типа": "myproject.Common.Tag", "TagID": "21abf6b1-6d45-41e5-a39b-006e621eeb22", "UniqueName": "DotNet", "TagName": "DotNet", "CreatedAt": "/ Date (1255108286850) /"}]
этот код jquery показывает раскрывающийся список веб-службы, использованной в первом примере jquery.
$("#tbAuto").autocomplete({
source: function(request, response) {
$.ajax({
url: "http://localhost/myproject/Service.asmx/getlist2",
data: "{}",
dataType: "json",
type: "POST",
contentType: "application/json; charset=utf-8",
// dataFilter: function(data) { return data; },
success: function(data) {
response($.map(data, function(item) {
return {
value: item.TagName
}
}))
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
alert(errorTrown);
}
});
},
minLength: 0
});