模板
<form method="post" action=".">
{% csrf_token %}
<table width="100%" cellpadding="0" cellspacing="0" >
<tr>
<td colspan="2" class="incident-type">
{% for type in typeList%}
{% if type.parent_type_id == None %}
<h1>{{type.title}}</h1>
{% else %}
{% if checked_ones %}
<label><input type="checkbox" checked="True" value="{{ type.title }}" name="key">{{ type.title }}</label><br />
{% else %}
<label><input type="checkbox" value="{{ type.title }}" name="key">{{ type.title }}</label><br />
{% endif %}
{% endfor %}
请参阅此处,复选框输入来自views.py
中的此行 checked_ones = [unicode(x) for x in subtype if unicode(x) in request.POST.getlist('key')]
问题在于,如果选中并保存了任何一个选项,则会选择所有其他复选框选项(页面重定向后)。
尝试了一些逻辑循环,需要一些帮助。
答案 0 :(得分:2)
试试这个,
{% for type in typeList%}
{% if type.parent_type_id == None %}
<h1>{{type.title}}</h1>
{% else %}
{% if type.title in checked_ones %}
<label><input type="checkbox" checked="True" value="{{ type.title }}" name="key">{{ type.title }}</label><br />
{% else %}
<label><input type="checkbox" value="{{ type.title }}" name="key">{{ type.title }}</label><br />
{% endif %}
{% endif %}
{% endfor %}
希望这有帮助!