答案 0 :(得分:1)
对于Dropdown-Input
组合,我会使用两个模型字段:ContractType
和CustomContractType
。对于ContractType
,我会在高级字段设置中指定possibleValues
(第一类,第二类,第三类,......,其他)并将它们绑定到Dropdown
个选项:
@models.ModelName.fields.ContractType.possibleValues
并将值绑定到ContractType
字段:
@datasource.item.ContractType
然后我会将visible
或enabled
Input
的属性绑定到
@datasource.item.ContractType === 'Other'
并将值绑定到CustomContractType
字段:
@datasource.item.CustomContractType
并在onBeforeCreate
和onBeforeSave
模型事件中强制执行此逻辑:
if (record.ContractType !== 'Other' && record.CustomContractType !== null) {
record.CustomContractType = null; // or throw exception...
}
if (record.ContractType === 'Other' && record.CustomContractType === null) {
throw new Error('CustomContractType is required');
}
续订通知(通知?)
如果您只需要选择一个续订通知,我建议您使用Radio Group
小部件。否则,您可以继续使用多个复选框,并为每个复选框引入多个模型字段 OR 使用Multiselect
选择窗口小部件,并尝试将其与字符串模型字段结合使用{{3绑定变换器(您可以在split模板,管理员/设置页面中找到示例。)