【发布时间】:2015-10-15 13:30:56
【问题描述】:
这是我的django视图ajax请求函数:
def get_town(request):
if request.is_ajax():
q = request.GET.get('term', '')
towns = Town.objects.filter(name__icontains=q)
results = []
for name in towns:
name_json = {}
name_json['name'] = name.name
results.append(name_json)
data = json.dumps(results)
else:
data = 'fail'
mimetype = 'application/json'
return HttpResponse(data, mimetype)
网址和一切都设置得很好。
我的自动完成是这样的:
$(function() {
$("#id_town").autocomplete({
source: "/api/get_town/",
minLength: 3,
});
});
但是,您可以从下图中看到,虽然结果已返回并可从请求中获得,但不会显示在下拉列表中。根据下图输入框中输入的键,我得到的结果是:[{"name": "Densuano"}]
那有什么问题呢?为什么不显示下拉菜单?
【问题讨论】:
-
不是解决方案,但这绝对可以帮助您:
data = json.dumps(list(Town.objects.filter(name__icontains=q).values('name')))
标签: javascript jquery html ajax django