如何在复选框中选中删除数据?

时间:2018-04-28 11:16:03

标签: python django

我想删除复选框中的数据。我在html中写道

<div id="now">
 <form  action="/app/delete" method="POST">
    {% for item in data %}
        <div class="left">
                <input type="checkbox">
                <p>{{ item.name }}</p>
                <p>{{ item.email }}</p>
        </div>
    {% endfor %}

    <button type="submit">SUBMIT</button>
 </form>
</div>
在views.py中

@csrf_exempt
def done(request):
    delete_ids = request.POST.getlist('delete_ids')
   print(delete_ids)
    if delete_ids:
        Data.objects.filter(id__in=delete_ids).delete()

    return render(request, 'top.html')

我的理想系统是当我检查项目的复选框并放入SUBMIT按钮时,调用完成方法,并删除已检查的数据。但是当我选中复选框并放入SUBMIT按钮时,没有任何反应.print(delete_ids)显示空列表如[],所以我认为检查数据无法获取。如何将检查数据发送到Django?我的代码有什么问题?

2 个答案:

答案 0 :(得分:0)

同意@MasonStedman 你应该这样做像

这样的东西
<div class="left">
                <input type="checkbox">
                <p>{{ item.name }}</p>
                <p>{{ item.email }}</p>
<input type="hidden" name="delete_ids[]" value="{{item.id}}" />
</div>

答案 1 :(得分:0)

如果我有如下定义的复选框:

<input type="checkbox" id="checkbox1">

我可以使用javascript

 <script>

    var isChecked
    isChecked = document.getElementById("checkbox1").checked;
    checkbox_status= isChecked.toString()    
    return alert_status;

 </script>