Aem CQ5中的嵌套多字段或带有in多字段的多字段

Aem CQ5中的嵌套多字段或带有in多字段的多字段,aem,sling,crx,Aem,Sling,Crx,想要在cq5中构建嵌套的多字段对话 我的要求是使用 头衔 链接文本 链接路径 图像上传 在这个多字段中,我希望将linktext作为另一个多字段 注: .我可以创建titile、linktext、linkpath、imageupload作为多字段,但不能将linktext作为多字段中的另一个多字段。我是cq5开发人员的新手,Kinldy建议是否有其他方法。我认为唯一的方法是编写自己的小部件。我已完成此操作,但无法共享代码。如果您愿意,您可以查看我一直在构建的这个开源库。StucturedMult

想要在cq5中构建嵌套的多字段对话

我的要求是使用

头衔

链接文本

链接路径

图像上传

在这个多字段中,我希望将linktext作为另一个多字段

注:


.我可以创建titile、linktext、linkpath、imageupload作为多字段,但不能将linktext作为多字段中的另一个多字段。我是cq5开发人员的新手,Kinldy建议是否有其他方法。

我认为唯一的方法是编写自己的小部件。我已完成此操作,但无法共享代码。如果您愿意,您可以查看我一直在构建的这个开源库。StucturedMultiList小部件可能适合您的需要。

如Chris Leggett所述,如何实现自定义小部件的示例可在以下网址找到:

我如何存储该值的格式为:

[项目1 |项目2]

使用一点逻辑,然后您可以提取链接文本和url,但是如果使用这种格式,第三个值似乎是不正确的,但是存储此信息的样式将是相同的。也许您可以将信息存储为JSON,但我个人还没有见过这种实现


希望能有所帮助。

这将涉及到定制多字段js和通过扩展复合字段创建自定义XType。嵌套自定义多字段的大部分步骤与创建单个自定义多字段的步骤相同

内部多字段将在getValue上返回一个逗号分隔的字符串,该字符串必须与外部多字段中由分隔符分隔的其他字段连接。内部多字段的设置值需要一个字符串数组,为此,您必须修改内部多字段的多字段js,并重写设置值方法,以获取逗号分隔的字符串并拆分为一个数组

外部多字段也必须在内部多字段内容发生变化时更新。这可以通过在更新内部多字段后立即调用更新方法来实现(外部多字段的引用可以通过findParentBy方法获得)

最终结果将如下所示

字符串数组

[0]:a-外场1A-外场2A-1-内场1A-1-内场2,a-2-内场1A-2-内场2

[1] :b-outer-field1b-outer-field2b-1-inner-field1b-1-innerfield2,b-2-innerfield1b-2-innerfield2


查看此链接

我知道您在处理专业工作时可能会受到限制,但如果您认为Github项目包含可以回答此问题的代码,您能在此处给出该代码的示例吗?-如果是在Github上,那么它肯定是开源的&最好是在网站上找到问题的答案,而不仅仅是链接到其他地方。