ben*_*nto 5 django ajax jquery json
我正在为我的博客进行基本搜索,基本功能正常运行.然而,我想知道的是,你是否可以在ajax响应中返回上下文变量,然后可以在模板中访问它.这是我的搜索def:
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')
Run Code Online (Sandbox Code Playgroud)
这是通过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
});
});
Run Code Online (Sandbox Code Playgroud)
我想要做的是将def搜索中包含的查询变量传递回我的jquery函数.在常规的http响应中,您将使用上下文变量...但我不确定如何使用jQuery传递这些变量.
您可以做的是将字典传递回 HttpResponse 而不仅仅是结果。
data = {
'query': request.POST['query'],
'results': serializers.serialize("json", Text.objects.filter(Q(title__icontains=query) | Q(mytextfield__icontains=query)))
}
return HttpResponse(json.dumps(data), 'application/javascript')
Run Code Online (Sandbox Code Playgroud)
确保导入 json 或 simplejson。
| 归档时间: |
|
| 查看次数: |
2538 次 |
| 最近记录: |