我想知道为什么只有在你停止输入并且延迟几秒钟后才显示建议,是因为我的代码没有优化吗?
页面上的脚本:
<script type="text/javascript">
$(document).ready(function() {
$("#navPersonSearch").typeahead({
name: 'people',
remote: 'name_autocomplete/?q=%QUERY'
})
.keydown(function(e) {
if (e.keyCode === 13) {
$("form").trigger('submit');
}
});
});
</script>
键按下代码片段是因为如果不加它,当按下回车键时,我的表单无法提交。我的Django视图:
def name_autocomplete(request):
query = request.GET.get('q','')
if(len(query) > 0):
results = Person.objects.filter(short__istartswith=query)
result_list = []
for item in results:
result_list.append(item.short)
else:
result_list = []
response_text = json.dumps(result_list, separators=(',',':'))
return HttpResponse(response_text, content_type="application/json")
我的Person模型中的短字段也被索引了。有没有办法提高我的typeahead的性能?