以下是表格。我只想在用户选择每周选项时显示网络复选框(天)。是否应该在视图,模板或表单中完成此逻辑?有人能指点我一个例子吗?
class bugtoolform(ModelForm):
F_Choices = (
('DAILY','DAILY'),
('HOURLY','HOURLY'),
('WEEKLY','WEEKLY'),
)
frequency = forms.TypedChoiceField(choices = F_Choices)
DAY_CHOICES = (
('1', 'MONDAY'),
('2', 'TUESDAY'),
('3', 'WEDNESDAY'),
('4', 'THURSDAY'),
('5', 'FRIDAY'),
('6', 'SATURDAY'),
('7', 'SUNDAY'),
)
days = forms.MultipleChoiceField(required=False,
widget=forms.CheckboxSelectMultiple, choices=DAY_CHOICES)
#</br>
class Meta:
model = bugtool
fields = ['frequency','days']
答案 0 :(得分:2)
这是你想用javascript在前端做的事情。
以下是高级别的一般过程:
答案 1 :(得分:1)
我能够使用id字段让jquery工作,但我不知道如何使用django表单。 无法在脚本中相应地检索表单字段值。任何帮助将不胜感激。
以下是我的模板
<html>
<head>
<h1>Tool !!!!</h1>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js">
</script>
<script>
$(document).ready(function(){
$('#{{form.frequency}}').change(function(){
if( $('#{{form.frequency.value}} == 'WEEKLY' ) {
$('#showthis').show();
} else {
$('#showthis').hide();
}
});
});
</script>
<div id='showthis'>test test</div>
</head>
<body>
<form action="/tool/" method="post">
{% csrf_token %}
Frequency {{form.frequency}}
</br>
</br>
{{form.days.as_hidden}}
</br>
<input type="submit" value="Submit">
</form>
</body>
</html>