Adr*_*eja 4 javascript python django checkbox django-templates
我是初级后端开发人员。我不知道如何使用JS。
我不能设置
<input type="checkbox" name="player_check">
Run Code Online (Sandbox Code Playgroud)
真的...或反向我无法设置
<input type="checkbox" name="player_check" checked>
Run Code Online (Sandbox Code Playgroud)
错误的。
我的代码:
<table id="some_table">
<thead>
<tr>
<th>Prepared</th>
</tr>
</thead>
<tbody>
{% for player in players %}
<tr>
<td>
<input type="checkbox" name="player_check">
</td>
</tr>
{% endfor %}
</tbody>
</table>
Run Code Online (Sandbox Code Playgroud)
假设在“玩家”中我有 5 个玩家,每个玩家都有一个值“player_check”。
其中两个有:
player.player_check = True
Run Code Online (Sandbox Code Playgroud)
休息:
player.player_check = False
Run Code Online (Sandbox Code Playgroud)
我正在尝试使用 {{}} 或 {% %} 使用这些值在我的表中启动复选框
我试过了:
<input type="checkbox" name="player_check" value=1>
<input type="checkbox" name="player_check" value="1">
<input type="checkbox" name="player_check" value="True">
<input type="checkbox" name="player_check" value=True>
<input type="checkbox" name="player_check" value="checked">
Run Code Online (Sandbox Code Playgroud)
什么都不起作用......然后我发现复选框有一个参数被选中,所以:
<input type="checkbox" name="player_check" checked>
Run Code Online (Sandbox Code Playgroud)
没关系但是...现在我无法关闭它:
<input type="checkbox" name="player_check" checked="false">
<input type="checkbox" name="player_check" checked="0">
<input type="checkbox" name="player_check" checked=0>
<input type="checkbox" name="player_check" checked="unchecked">
Run Code Online (Sandbox Code Playgroud)
所以我决定在 python 代码中使用 django templpates + 更改:现在player.player_check 等于选中或未选中
它仍然不起作用!现在我不能把 {{ }} 没有名字,比如“something”={{ foo }}
现在我有 0 个想法我可以做更多的事情来使它工作......也许是 JS?但我不敢相信仅在 django/python 中就没有正确的方法来做到这一点。;/
例如,您可以使用{% if ... %}标签执行此操作:
{% for player in players %}
<tr>
<td>
<input type="checkbox" name="player_check"{% if player.player_check %} checked{% endif %}>
</td>
</tr>
{% endfor %}Run Code Online (Sandbox Code Playgroud)
但我认为您最好使用 Django 表单,它会以更优雅的方式为您处理此问题:您指定表单字段,Django 将处理其余部分。