{% for choice in form.options.field.choices %}
<div class="te">
<label class="te">{{ choice.1 }}</label>
<label class="te"><input type="radio" data-type="{{ text }}" name="val_{{ forloop.counter }}" value="{{ choice.0 }}" class="options" /></label>
<label class="te"><input type="radio" data-type="{{ text }}" name="val_{{ forloop.counter }}" value="0" class="options"/></label>
</div>
<input class="hidden" type="checkbox" name="options" value="{{ choice.0 }}" id="val_{{ forloop.counter }}" />
{% endfor %}
以上代码显示标签和单选按钮,但如何查看循环中选中的复选框
当我使用此{{ form.options }}
时,它会显示正确选中的复选框和未选中的复选框。
我在循环中尝试了 choice.isChecked 但总是如此。我该如何解决这个问题。
如果我在循环中打印选项,则显示
(1L, u'test 1')
(2L, u'test 2')
(3L, u'test 3')
答案 0 :(得分:3)
更好的解释是代码示例,使用if/in
比较值:
感谢@Anentropic指出,我没有给予足够的重视,这是编辑过的,没有使用stringformat
:
{% if choice.0 in form.options.value %}selected="selected"{% endif %}
答案 1 :(得分:0)
使用is_checked
复选框,它适用于我。