ダイアログの選択にオプションを追加する方法に問題があります。
私が読んでいるAdobeのメモはここにあります: CQ.form.Selection
options : Object[]/String
まで下にスクロールすると、オブジェクトまたは文字列を介して、オプションを参照して上記の選択を提供する2つの方法が表示されます。オブジェクトメソッドを使おうとしています。彼らが提供するフォーマットの例で十分です。
[
{
value: "pink", // all types except "combobox"
text: "Pink",
qtip: "Real Pink" // "select" and "combobox"
}
]
ただし、CRXDE Liteでは、新しいプロパティを追加するときにオブジェクトを選択または入力することができず、これが途方に暮れています。複素数値を入力する別の方法はありますか?
オプションをObject[]
として追加することは、プロパティではなく子ノードを介して行われます。 (実際、APIでObject
が表示されている場合は、node
ではなくproperty
と考えてください。)
dialog.xml
ファイルでは、これは次のように実行されます。
<selectList
jcr:primaryType="cq:Widget"
defaultValue="0"
fieldLabel="Number"
name="./number"
type="select"
xtype="selection">
<options jcr:primaryType="cq:WidgetCollection">
<one
jcr:primaryType="nt:unstructured"
text="One"
value="1"/>
<two
jcr:primaryType="nt:unstructured"
text="Two"
value="2"/>
<three
jcr:primaryType="nt:unstructured"
text="Three"
value="3"/>
<four
jcr:primaryType="nt:unstructured"
text="Four"
value="4"/>
</options>
</selectList>
CRXDEでは、これは同じ階層を作成することで実現できます。
jcr:primaryType
のcq:WidgetCollection
を与えます。これはオプション値を保持します。jcr:primaryType
がnt:unstructured
の場合、個々のオプションをこの子ノードとして追加できるようになりました。value
、text
、qtip
)をこれらの子ノードに配置します。