我有一个包含一些字段的表单:textarea,文本框和随机数字的复选框,根据产品的不同而不同。我想知道如何获取已选中复选框的标签。
这是我的表格:
<form class="form-inline">
<strong><h3>Revise este produto</h3></strong><br>
{% for tag in tags %}
<label class="checkbox">
<input type="checkbox" value=""> #Ótimo
</label>
{% endfor %}
<br/>
<p> </p>
<label>Envie outras hashtags</label> <br/>
<input type="text" class="span3" placeholder="exemplo1, exemplo2">
<br />
<p> </p>
<label>Deixe sua opinião (opcional)</label> <br/>
<textarea name="Text1" cols="80" class="span3" rows="5" placeholder="Digite sua opinião aqui"></textarea>
<br/>
<p> </p>
<button class="btn btn-primary" type="submit"><h4>Pronto!</h4></button>
</form>
答案 0 :(得分:1)
假设您将表单作为POST发送,则表示值
选中的复选框位于request.POST.getlist('tag')
。
请注意,只有选中的复选框才能在POST中发送,但列表中 包含所有已检查框的值元素。
例如:
<input type="checkbox" name="tag[]" value="1" />
<input type="checkbox" name="tag[]" value="2" />
<input type="checkbox" name="tag[]" value="3" />
<input type="checkbox" name="tag[]" value="4" />
说是否检查了1,4,
check_values = request.POST.getlist('checks')
check_values将包含[1,4](已检查的值)
答案 1 :(得分:1)
在models.py中:
class Tag:
published = BooleanField()
(...)
在模板中:
{% for tag in tags %}
<label class="checkbox">
<input type="checkbox" name="tag[]" value="" {% if tag.published %}checked{% endif %}> #Ótimo
</label>
{% endfor %}