【发布时间】:2016-06-02 14:25:49
【问题描述】:
我想在我的 html 表单中创建选择字段,该表单具有可用的可选选项和列表中的“添加新”选项。通过选择“添加新”,我想淡入所需的文本输入控件。如果选择了任何可用选项,表单不会因为需要或未填写文本输入而做出反应。
是否可以仅使用 django 表单进行此操作,还是我需要使用常规表单字段 required=False 设置并在前端处理表单验证?
【问题讨论】:
标签: django
我想在我的 html 表单中创建选择字段,该表单具有可用的可选选项和列表中的“添加新”选项。通过选择“添加新”,我想淡入所需的文本输入控件。如果选择了任何可用选项,表单不会因为需要或未填写文本输入而做出反应。
是否可以仅使用 django 表单进行此操作,还是我需要使用常规表单字段 required=False 设置并在前端处理表单验证?
【问题讨论】:
标签: django
您可以访问您的小部件属性,覆盖 init() 方法:
class MyForm(forms.Form):
...
def __init__(self, *args, **kwargs):
super(MyForm, self).__init__(*args, **kwargs)
if condition:
self.fields['my_field'].required = True
self.fields['my_field'].widget.attrs['required'] = 'required'
【讨论】: