【发布时间】:2011-05-28 07:34:19
【问题描述】:
下面是我的 JavaScript
<script>
$(function () {
function log(message) {
$("<div/>").text(message).prependTo("#log");
$("#log").attr("scrollTop", 0);
}
$("#city").autocomplete({
source: function (request, response) {
$.ajax({
url: "getpostcodes.aspx",
dataType: "jsonp",
data: {
like: request.term
},
success: function (data) {
response($.map(data.RegionList, function (item) {
return {
label: item.Detail,
value: item.Detail
}
}));
}
});
},
minLength: 2,
select: function (event, ui) {
log(ui.item ?
"Selected: " + ui.item.label :
"Nothing selected, input was " + this.value);
},
open: function () {
$(this).removeClass("ui-corner-all").addClass("ui-corner-top");
},
close: function () {
$(this).removeClass("ui-corner-top").addClass("ui-corner-all");
}
});
});
</script>
下面是服务器返回的我的 JSON
{"RegionList":[{"Detail":"2250, GOSFORD"}]}
但是我的自动完成没有显示结果?我做错什么了吗?
【问题讨论】:
-
解决了这个问题。我所要做的就是将 JSON 结果包装到回调中,因为它正在使用 JSONP :)。
标签: asp.net jquery jquery-ui autocomplete