我正在开发类似于Tours的内容应用。在这里我有一个有多个字段的表单。
现在我有一个像http://jsfiddle.net/5SArB/1911/小提琴这样的要求。
我需要根据下拉列表中的选择隐藏一些字段,例如当年龄超过18时父隐藏详细信息如何隐藏。
如何在玉兰花内容应用程序中实现这一点?enter code here
答案 0 :(得分:1)
这应该是您在Magnolia 5.7中使用的Yaml。
您应将可切换字段与 composite 字段结合使用:
wide: true
form:
tabs:
- name: tabForm
label: Form registration
fields:
- name: username
label: Name
fieldType: text
- name: email
label: Email
fieldType: text
- name: ageConfig
fieldType: switchable
label: Age
selectionType: select
transformerClass: info.magnolia.ui.form.field.transformer.composite.DelegatingCompositeFieldTransformer
type: String
options:
- name: young
label: 18 or younger
value: young
- name: old
label: 19 or older
value: old
fields:
- name: young
fieldType: composite
label: ''
layout: vertical
fields:
- name: parentName
fieldType: text
label: Parent name
- name: parentMail
fieldType: text
label: Parent email
- name: old
fieldType: hidden
actions: !include:/my-project/dialogs-common/actions-block.yaml
这是“年轻”的情况:
这是“旧”情况:
答案 1 :(得分:0)
您可以通过扩展SwitchableFieldFactory
或CompositeFieldFactory
并在那里编码所需的行为来实现此目的。
HTH,
扬