我希望我的html使用'隐藏' 作为div的属性进行渲染:
<div class="some-class" hidden>
<input id="field1"....... form stuff>
</div>
如果我的表单如下:
class SomeForm(forms.ModelForm):
def __init__(self, *args, **kwargs):
super(SomeForm, self).__init__(*args, **kwargs)
self.helper = FormHelper()
self.helper.layout = Layout(
Div(Field('field1'), css_class="some-class"),
)
我将如何进行此操作?我似乎无法在Crispy文档中找到此信息。现在我正在使用jquery(在页面加载之后),我还可以添加一个类然后在css中隐藏它,但是如何添加&#39;隐藏&#39;归属于div?
答案 0 :(得分:2)
根据the docs,你有几个选择。您可以使用field
隐藏type="hidden"
:
Field('field_name', type="hidden")
如果您必须隐藏示例中显示的div
,我建议您使用CSS类:
.some-class { display: none; }
然而,文档说crispy-forms支持所有HTML5属性(如hidden
),只需用下划线替换破折号即可。似乎只是简单地使用hidden="true"
应该适用于您的情况:
Div(Field('field1'), css_class="some-class", hidden="true")