ajax - Django request.is_ajax 返回 false

标签 ajax django

我正在用 Django + jQuery 测试 ajax。我的看法是这样的:

def ajax_test(request):
    if request.is_ajax():
        message = "This is ajax"
    else:
        message = "Not ajax"
    return HttpResponse(message)

这在我的模板中:
<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <script type="text/javascript" src="{{ STATIC_URL }}js/jquery-1.6.4.js"></script>
</head>
<body>
<script>
$.get("/ajax_test", function(data) {
    alert(data);
    });
});
</script>
</body>
</html>

我的问题是 - 为什么这会返回“Not ajax”到我的 html 页面?

最佳答案

我不知道你怎么了。我测试并收到一条好消息:This is ajax .我的代码:

urls.py

url(r'^$', 'myapp.views.home', name='home'),
url(r'^ajax_test/$', 'myapp.views.ajax_test', name='ajax_test'),

View .py
def home(request):
    return render_to_response('home.html', {},
                          context_instance=RequestContext(request))

def ajax_test(request):
    if request.is_ajax():
        message = "This is ajax"
    else:
        message = "Not ajax"
    return HttpResponse(message)

模板/home.html
<!DOCTYPE html>
<html>
<head>
    <title></title>
    <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>
</head>
<body>
<script type="text/javascript">
    $(document).ready(function () {
        $.get("/ajax_test/", function (data) {
            alert(data);
        });
    });
</script>
</body>
</html>

关于ajax - Django request.is_ajax 返回 false,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8587693/

相关文章:

javascript - 使用ajax未接收完整的base64编码数据

python - Django: `MergeDict` 已弃用,请改用 `dict.update()`

python - 大型 django 表上的高效数据迁移

django - 从django.db.models.fields.related导入RelatedManager

ajax - JSF 2.0 中的文本框渲染

javascript - 不使用 onclick 函数将数据发送到 Controller

jquery - 使用 cors 发布 JSON ajax 请求在 IE10/Edge 中不起作用

jquery - AJAX/CSS - 在 ajax 调用填充后,最初在选择框上出现 css 问题

javascript - 使用 href ="#About us"在一个网站上导航不适用于较小的设备

python - 如何让django通过fixtures上传图片文件