cq:include 具有服务器验证的 CQ 形式的默认组件
cq:include default components in CQ form with server validation
我想自定义 start/end OOTB CQ5 用户表单组件,以在页面上 'form' 组件 drag/dropped 时从预填充的某些自定义组件开始。
我目前有一个重叠的 /apps/foundation/components/form 元素,自定义了 start/end/actions。但是我想办法将属于 FORM 组的组件添加到表单开始......每当将表单添加到页面时结束到页面。
我尝试使用 <cq:include path= "customComp" resourceType="/pathto/customComponent" />
到 form-end
组件的 jsp,这会添加/显示显示的自定义组件,但不会执行服务器验证它不是页面上开始和结束节点之间的单独节点,而是动态添加的。
这基本上是为了 enforce/mandate 在页面上放置表单时使用我的自定义验证码组件。
提前致谢!
如果您想将表单创建完全留给作者(如 OOTB 组件所预期的那样),则没有简单的方法来 "sneak in" 强制验证码组件。即使如果您设法放入了验证码组件,作者也可以删除它或将其移出您的段落系统。
将验证码与表单端混合使用是可能的,但必须从头开始重新设计表单端组件。我不想那样做。
我看到三个可能对你有帮助的选项:
- 实现一个 jcr EventListener,它会在创建或更改表单时触发。检查 jcr 中的表单数据结构,当缺少强制验证码组件时,添加它并提交。这种行为当然有点阴暗,可能会让作者感到惊讶 - 但它会起作用。
- 构建一个包装器表单组件,其中包含一个带有完全预配置表单的段落系统,包括表单开始、验证码和表单结束。这种方法甚至可以为作者节省一些工作,而且没有人会 "forget" 轻易地了解 chaptcha。然而,没有什么能阻止邪恶的作者明确删除 catpcha 组件。
- 构建一个完全自定义的表单组件,不使用任何 OOTB 组件。在这种情况下,您可以完全控制作者可以做什么和不能做什么。为了节省开发时间,您很可能会放弃很多灵活性,并最终得到一个主要是静态的表单,作者可以在其中编辑一些关键部分。
我想自定义 start/end OOTB CQ5 用户表单组件,以在页面上 'form' 组件 drag/dropped 时从预填充的某些自定义组件开始。
我目前有一个重叠的 /apps/foundation/components/form 元素,自定义了 start/end/actions。但是我想办法将属于 FORM 组的组件添加到表单开始......每当将表单添加到页面时结束到页面。
我尝试使用 <cq:include path= "customComp" resourceType="/pathto/customComponent" />
到 form-end
组件的 jsp,这会添加/显示显示的自定义组件,但不会执行服务器验证它不是页面上开始和结束节点之间的单独节点,而是动态添加的。
这基本上是为了 enforce/mandate 在页面上放置表单时使用我的自定义验证码组件。
提前致谢!
如果您想将表单创建完全留给作者(如 OOTB 组件所预期的那样),则没有简单的方法来 "sneak in" 强制验证码组件。即使如果您设法放入了验证码组件,作者也可以删除它或将其移出您的段落系统。
将验证码与表单端混合使用是可能的,但必须从头开始重新设计表单端组件。我不想那样做。
我看到三个可能对你有帮助的选项:
- 实现一个 jcr EventListener,它会在创建或更改表单时触发。检查 jcr 中的表单数据结构,当缺少强制验证码组件时,添加它并提交。这种行为当然有点阴暗,可能会让作者感到惊讶 - 但它会起作用。
- 构建一个包装器表单组件,其中包含一个带有完全预配置表单的段落系统,包括表单开始、验证码和表单结束。这种方法甚至可以为作者节省一些工作,而且没有人会 "forget" 轻易地了解 chaptcha。然而,没有什么能阻止邪恶的作者明确删除 catpcha 组件。
- 构建一个完全自定义的表单组件,不使用任何 OOTB 组件。在这种情况下,您可以完全控制作者可以做什么和不能做什么。为了节省开发时间,您很可能会放弃很多灵活性,并最终得到一个主要是静态的表单,作者可以在其中编辑一些关键部分。