Plone 4 dexterity viewform - 将css类添加到fieldset X中的widget

时间:2013-03-13 12:37:18

标签: plone dexterity z3c.form

我有一个基于敏捷的内容类型,在模式中定义了不同的编辑视图和字段集。每当我想要更新第一个字段集中的小部件/字段时,它就会变得吝啬。例如:

self.groups[0].fields['my_field'].mode = HIDDEN_MODE
必须使用

隐藏第二个字段集中的my_field。要使相同的字段需要

self.schema['my_field'].required = True

诀窍。

但是如何将css类添加到除第一个字段集之外的其他窗口小部件?什么是

self.fields['my_field_on_first_fieldset'].widget.addClass("myClass")
如果我的小部件位于第一个字段集“page”上,

会这样做。

1 个答案:

答案 0 :(得分:3)

Martin Aspeli's tutorial之后,我测试了您的请求并且可以确认奇怪的是 klass-attribute不能应用于子字段集中的不可见小部件,返回“Key Error”以引用小部件的名称。

使用其他属性,f.e。 “大小”,没有问题。

相反,您可以通过Javascript应用该课程。

如果你想在客户端没有启用Javascript的情况下提供后备,你可以在updateWidget()中添加一个条件,检查它是否已启用,如果没有,则分别使用addClass()类来应用klass-属性。那将是有效的,因为所有字段都显示出来而不再隐藏。