web-dev-qa-db-ja.com

ダイアログウィンドウに選択ドロップダウンを追加

ダイアログの選択にオプションを追加する方法に問題があります。

私が読んでいるAdobeのメモはここにあります: CQ.form.Selection

options : Object[]/Stringまで下にスクロールすると、オブジェクトまたは文字列を介して、オプションを参照して上記の選択を提供する2つの方法が表示されます。オブジェクトメソッドを使おうとしています。彼らが提供するフォーマットの例で十分です。

[
    {
        value: "pink", // all types except "combobox"
        text: "Pink",
        qtip: "Real Pink" // "select" and "combobox"
    }
]

ただし、CRXDE Liteでは、新しいプロパティを追加するときにオブジェクトを選択または入力することができず、これが途方に暮れています。複素数値を入力する別の方法はありますか?

10
Angry Spartan

オプションを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では、これは同じ階層を作成することで実現できます。

  1. 選択ノードを右クリックして、作成> ノードを選択します。
  2. このノードにjcr:primaryTypecq:WidgetCollectionを与えます。これはオプション値を保持します。
  3. jcr:primaryTypent:unstructuredの場合、個々のオプションをこの子ノードとして追加できるようになりました。
  4. プロパティ(valuetextqtip)をこれらの子ノードに配置します。
20
anotherdave