django模板中的jquery回调

django模板中的jquery回调,django,Django,在我的django模板中,我使用$.ajaxjQuery方法,其中url指向我的django视图之一。现在,如何在这个django视图中使用render\u to\u响应 def document_status(request): if request.method == u'GET': GET = request.GET if GET.has_key(u'doc_type') and GET.has_key(u'iqama_no'):

在我的django模板中,我使用$.ajaxjQuery方法,其中url指向我的django视图之一。现在,如何在这个django视图中使用render\u to\u响应

def document_status(request):
    if request.method == u'GET':        
        GET = request.GET
        if GET.has_key(u'doc_type') and GET.has_key(u'iqama_no'):
            pass
    json_response = simplejson.dumps({'res':True})
    #return HttpResponse(json_response, mimetype='application/json')
    return render_to_response('tracking/index.html' ) 

AJAX不用于重定向,而是用于从服务器异步获取数据

但是如果您确实想要重定向,而不是呈现模板(这将不起作用),则返回一个包含您想要重定向到的URL的
HttpResponse
,并在AJAX调用
success
函数中使用返回的数据从javascript重定向

因此javascipt代码看起来像这样:

$.ajax({
    url: "<your url>",
    data: <whatever data you want to send>,
    success: function(new_url){
        window.location = new_url;
    }
});
编辑

要回答评论中的问题,以下是一种方法:

首先是页面A的html模板:

<form action="http://url/of/page/B">
    <select name="value" onchange="this.form.submit();">
        <option value="1">First option</option>
        <option value="2">Second option</option>
    </select>
</form>

希望这能给你一些提示,告诉你怎么做,或者搜索什么。

你的代码有什么问题吗?上面的视图是通过jquery$.ajax方法调用的。现在我想重定向到index模板,但上面的代码并没有重定向到index.html模板。有没有办法在jquery中回调时重定向到特定的django模板?但是我想将一些模板变量传递给index.html。这些变量的值取决于通过ajax发送的数据。我怎样才能做到这一点?@Asif您不能通过AJAX添加或更改上下文变量!要么重新加载页面,要么重定向到另一个页面。有什么方法可以做到这一点吗?我尝试了$('#results').html('').load('{%url test%}'),但结果是相同的模板,即一个模板中有两个模板page@Asif有关如何重定向,请参阅我的答案。有关重新加载当前页面的信息,请参见示例页面。假设我在页面A中有下拉字段。现在在选择事件时,我想使用一些django上下文变量重定向到页面B。这些上下文变量的值取决于页面下拉字段的选定值。如何在django中实现这一点?
<form action="http://url/of/page/B">
    <select name="value" onchange="this.form.submit();">
        <option value="1">First option</option>
        <option value="2">Second option</option>
    </select>
</form>
def page_b_view(request):
    value = request.GET.get('value', '0')  # '0' is default value if not found
    if value = '1':
        # Add some context variables here
    elif value == '2':
        # Add some other context variables here
    return render_to_template(...)