来自django模板的Ajax调用

我有一个django模板,它扩展了基本模板,该模板具有在其中加载jquery的代码。 这个模板有一个简单的文本框,我想通过ajax获取对象。

{% extends 'base.html' %} {% block content %} 
$('#ajaxform').submit(function(){ console.log('Form submitted'); $.get('{% url get_ajax_data %}', $(this).serialize(),function(data){ $('#dataDiv').text(data); }) return false; }); {% endblock %}

在这个模板中,我尝试对get_ajax_data url进行ajax调用,在相应的视图中我只返回文本作为return HttpResponse('Ajax respose') 。 但这似乎不起作用,表单在我返回false时提交。 我不确定我错过了哪里。

直到答案,通常的做法是初始化submit()处理程序。 这是通过在页面准备好时进行设置来完成的。 目前你有它以常规方式提交表单,它甚至没有注册你的JavaScript。 要修复它你可以写:

 $(document).ready(function() { $('#ajax_form').submit(fun // the rest of your code here. }); 

如果jQuery事件处理程序中存在错误,则会以静默方式失败。 检查明显的事情,比如缺少分号等。确保事件处理程序中的所有内容都有效,它应该可以正常工作。