【发布时间】:2012-04-16 10:21:09
【问题描述】:
我正在对我的博客进行基本搜索,基本功能已启动并正常工作。但是,我想知道的是,您是否可以在 ajax 响应中返回上下文变量,然后可以在模板中访问这些变量。这是我的搜索定义:
from django.http import HttpResponse
from django.db.models import Q
from django.core import serializers
def search(request):
if request.is_ajax():
query = request.POST['query']
text_list = Text.objects.filter(Q(title__icontains=query) | Q(mytextfield__icontains=query))
data = serializers.serialize("json", text_list)
else:
data = "whoops"
return HttpResponse(data,'application/javascript')
这是通过 jquery 请求的。
$(document).ready(function() {
$('#search').submit(function(){
$.post("/search/search/", $("#search").serialize(), function(data){
// Search results for: **query**
$.each(data, function(index){
$(ajax).append(data[index].fields.title + "<br>");
});
}, "json");
return false
});
});
我想要做的是将包含在 def 搜索中的 query 变量传回我的 jquery 函数。在常规的 http 响应中,您将使用上下文变量......但我不确定如何使用 jQuery 传递这些变量。
【问题讨论】: