使用javascript提交表单

时间:2013-08-02 11:54:30

标签: 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 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>

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

2 个答案:

答案 0 :(得分:1)

试试这个:

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

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

答案 1 :(得分:1)

要立即提交您的表单(我猜您希望在表单载入的页面上发生这种情况),您可以这样做:

// 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');
});