select all rows in django_tables2

前端 未结 2 840
遥遥无期
遥遥无期 2020-12-19 08:14

I have tried to select all rows in a table by clicking on the upper check box in a CheckBoxColumn with the following definition:

selection = tables.CheckBoxC         


        
相关标签:
2条回答
  • 2020-12-19 08:35

    It is possible to select all checkboxes in a CheckBoxColumn by replacing the input attribute in the header cell:

    selection = tables.CheckBoxColumn(accessor="pk", attrs = { "th__input": 
                                            {"onclick": "toggle(this)"}},
                                            orderable=False)
    

    Then this JavaScript construct in the template file should do the work.

    <script language="JavaScript">
    function toggle(source) {
        checkboxes = document.getElementsByName('selection');
        for(var i in checkboxes)
            checkboxes[i].checked = source.checked;
    }
    </script>
    
    0 讨论(0)
  • 2020-12-19 08:43

    Unfortunately CheckBoxColumn is very bare-bones. The header checkbox does not do anything, and it's up to you to write JavaScript to make it work. There are plans to make this more seamless, but aren't like to happen soon.

    0 讨论(0)
提交回复
热议问题