Estou tentando usar o jQuery AutoComplete, mas tudo o que recebo é um único item com todos os resultados.
Eu tenho esse ASP.Net WebMethod:
[WebMethod]
public static string FetchCompletionList(string term)
{
var json = JsonConvert.SerializeObject(CustomerProvider.FetchKeys(term, 8));
return json;
}
sendo chamado por este script:
$("[id$="txtLKey"]").autocomplete({
minlength: 2,
source: function(request, response) {
$.ajax({
type: "POST",
url: "/Views/Crm/Json/Json.aspx/FetchCompletionList",
data: "{term: "" + $("[id$="txtLKey"]") .val() + "", count: "8"}",
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function (data) {
response(data);
},
error: function (jqXHR, textStatus, errorThrown) {
alert(jqXHR.responseText);
alert(textStatus);
alert(errorThrown.toString());
}
});
}
});
E o resultado é este:
Quando o que eu realmente quero é uma lista de opções, o usuário pode selecionar, ou seja, cada NZ deve ser um item de uma lista.
Respostas:
0 para resposta № 1Existem dois problemas aqui,
- você precisa passar
data.d
pararesponse
gostarresponse(data.d)
. - sua cadeia de valor é inválida, deve ser
{"d":["NZ0008","NZ0015","NZ0017","NZ0018","NZ0026","NZ0027","NZ003??1","NZ0035"]}