我处于autocomplete
使用get
和q
属性触发http请求的位置。我设法处理q
输入并生成结果列表。
然后我将列表序列化为json
并将其发回,但不知怎的,我看不到结果。
这是我的观看代码:
def autocomplete_company(request):
if request.is_ajax():
q = request.GET.get('q', '')
companies = Company.objects.filter(name__icontains = q ).order_by('name')[:10]
results = companies.values_list('name', flat=True)
data = simplejson.dumps([unicode(r) for r in results])
else:
data = 'fail'
return HttpResponse(data, mimetype="application/json")
AJAX:
$(function(){
$("#search_type").autocomplete("/company/autocomplete/",{
minChars: 2
});
});
有什么想法吗?
答案 0 :(得分:0)
您忘记在请求中传递查询字符串“q”
$(function(){
$("#search_type").autocomplete("/company/autocomplete/?q='your_search_string'",{
minChars: 2
});
});
q = request.GET.get('q', '')