我需要在对话框加载时打开多字段的第一项。我查看了多字段的API文档,但找不到。
<promo
jcr:primaryType="cq:Widget"
fieldLabel="abcd"
hideLabel="false"
itemId="abcd"
name="./abcd"
xtype="[multifield]">
<fieldConfig
jcr:primaryType="cq:Widget"
hideLabel="false"
layout="form"
name="./abcd"
title="abcd Item Info"
xtype="customPanel">
<items jcr:primaryType="cq:WidgetCollection">
</items>
</fieldConfig>
</promo>
请提出建议。
最佳答案
加载内容后,您可以收听Multifield触发的loadcontent
事件。如果最初没有可用的内容,请使用addItem()
方法添加一个项目,然后重做布局。
下面显示了使用多路径字段的示例配置。您可以根据需要进行调整。
<promo
jcr:primaryType="cq:Widget"
fieldLabel="Select Paths"
name="./paths"
xtype="multifield">
<fieldConfig
jcr:primaryType="nt:unstructured"
xtype="pathfield" />
<listeners
jcr:primaryType="nt:unstructured"
loadcontent="function(field, record)
{
if(record.get('paths') == undefined)
{
field.addItem(); field.doLayout();
}
}" />
</promo>