Django csrf因jquery验证而失败

时间:2013-10-27 17:17:10

标签: jquery django validation csrf

即使我在HTML模板中包含csrf标记,我在使用JQuery表单验证和模态内部的Django时遇到了以下问题。如果我提交表单而没有用JQuery验证它就可以了。

Forbidden (403)
CSRF verification failed. Request aborted.

在服务器端,我使用Django Form验证,没什么特别的。

提前谢谢你:)

这是我的代码:

的HTML

<form class="form-inline" id="add-subtitle-modal" action="/add_subtitle/" role="form" method="post" enctype="multipart/form-data">
    {% csrf_token %}

<div class="form-group">
      {{object.description}}
</div>

...

<button class="btn btn-danger" type="submit">save</button>

JS

$('#add-subtitle-modal').validate({
        rules: {
...
}

etc

        submitHandler: function(form) {
            var $form = $(form);
            var $inputs = $form.find("input, select, button, textarea");
            $inputs.prop("disabled", true);

            //let the backend to manage submiting

            $form.submit();
        }

1 个答案:

答案 0 :(得分:1)

这是我的错。在提交之前将输入设置为无效时,csrf也设置为禁用。因此,我认为它没有提交给服务器。我认为这是问题所在,因为我修改了哪个字段变为禁用它起作用。