使用javascript提交表单

使用javascript提交表单,javascript,jquery,django,django-forms,Javascript,Jquery,Django,Django Forms,javascript: $("#id_report").on('change', function() { var reportform = document.getElementById("status-form"); var live = document.getElementById("id_report"); if (live.checked == true){ reportform.submit(); } }); forms.py class Re

javascript:

$("#id_report").on('change', function() {
   var reportform = document.getElementById("status-form");
   var live = document.getElementById("id_report");
   if (live.checked == true){
    reportform.submit();
   }
  });
forms.py

class Reportform(Form):
    report = forms.BooleanField(widget=forms.CheckboxInput(),required=False, label="Report",initial=True)
template.html

<form action="." id="status-form" method="POST">{% csrf_token %}
  <p>{{closedreport.report}}Show Reports</p>
  </form>
{%csrf\u令牌%}
{{closedreport.report}}显示报告

如果复选框被选中,我想提交表单。默认情况下,复选框被选中,但表单不会被提交

试试这个:

$("#id_report").click(function(){
    if($(this).is(':checked'){
        $("#status-form").submit();
    }
});

单击按钮时,脚本将检查是否选中复选框。如果是,请提交表单。

要立即提交表单(我猜您希望在加载表单的页面时发生这种情况),您可以执行以下操作:

// Wait for document to load
$(function(){
    // Check if your checkbox is indeed checked
    if($('#id_report').is(':checked'){
        // Submit the form
        $("#status-form").submit();
    }
});
或者你可以这样做:

$(function(){
    $("#status-form").on('change', '#id_report', function() {
        var reportform = document.getElementById("status-form");
        var live = document.getElementById("id_report");
        if (live.checked == true){
            reportform.submit();
        }
    }).trigger('change');
});

“默认情况下,复选框处于选中状态”,因此您希望立即提交表单?@user2086641您究竟为什么要这样做?:D也许您正试图实现一些可以用更简单、更逻辑的ACL来完成的事情。