我不明白为什么我的 AJAX 请求在方法执行良好时没有被 JQUERY 执行。
我有一个表单,链接到一个 JQuery 函数事件,使用 AJAX 方法将数据发送到 Django 函数。
当我单击保存按钮时,我的页面会在浏览捕获事件的功能时重新加载。它可以很好地显示警报,但不会使用 AJAX 发送任何信息。 我的功能正确吗?这是 Django 的问题吗?
这是我的 html 表单:
<form method="post" id="insert_idea__form">
{% csrf_token %}
<div class="row">
<div class="col-md-12">
<div class="form-group">
<label for="insert_idea__titre">Titre de votre idée</label>
<input type="text" class="form-control" id="insert_idea__title" required="">
</div>
</div>
</div>
<div class="row">
<div class="col-md-12">
<div class="form-group">
<label for="insert_idea__content">Contenu de l'idée</label>
<textarea class="form-control" rows="5" id="insert_idea__content" name="centent"></textarea>
</div>
</div>
</div>
<button type="submit" class="btn btn-sm btn-primary">Sauvegarder</button>
</form>
这是我的 JQUERY 函数:
<script type="text/javascript">
$("#insert_idea__form").on('submit',(function(e)
alert("Stop");
$.ajax({
url: '{% url "insert_idea" %}',
type : 'POST',
data: {
'title': $("#insert_idea__title").val(),
'content': $("#insert_idea__content").val()
},
dataType: 'json',
success: function (data) {
alert('success');
}
});
}));
</script>
这是我在 Django 上的 url.py :
urlpatterns = [
url(r'^ajax/insert_idea/$', ideas.insert_idea, name="insert_idea"),
]
这是我的观点:
def insert_idea(request):
title = request.GET.get('title')
centent = request.GET.get('centent')
return JsonResponse()
如果你能帮我理解为什么没有数据发送到 View ?为什么页面会重新加载?
谢谢, 艾略特
最佳答案
问题是发送的数据中缺少 token csfr
关于javascript - Ajax + Django : Ajax is not recognized,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56941026/