使用django csrf标记的jQuery submit vs form submit按钮

时间:2016-03-17 11:25:02

标签: jquery django csrf csrf-protection django-csrf

我有一个简单的表格:

<form method="post" id="my_form" action="/my_action">
{% csrf_token %}
<input type="hidden" id="token" name="token" value="my_token" />
<input type="submit" />
</form>

如果我点击提交按钮,一切正常,但如果我使用jQuery自动提交表单:

$(function() {
    $('#my_form').submit();
});

我得到一个&#34; CSRF令牌丢失或不正确。&#34;错误。

奇怪的是,当我添加:

<input type="button" id="activate" />

$("#activate").on('click', function() { ... }); 

一切正常。单击按钮激活.submit()可以提供正确的功能,单击表单提交按钮也可以,但不会自动执行此操作。

为什么?

<input type="hidden" name="csrfmiddlewaretoken" value="{{ csrf_token }}">

也不起作用。

0 个答案:

没有答案