2013-07-08 12 views
9

ダイアログボックスの選択肢にオプションを追加する方法がわかりません。ダイアログボックスに選択ドロップダウンを追加する

私が読んでいるアドビのノートはここにある:CQ.form.Selection

スクロールoptions : Object[]/Stringまであなたのオブジェクトまたは文字列を経由して、言った選択を提供するためのオプションを参照する2つの方法を示します。私はオブジェクトメソッドを使用しようとしています。それらが提供するフォーマットの例で十分です。

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

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

答えて

19

オプションをObject[]として追加することは、プロパティではなく子ノードを介して行われます。 (実際にはどこでもあなたは、APIでObjectを参照してくださいpropertyのではなく、nodeだと思います。)あなたのdialog.xmlファイルで

、これが行われることになる次のように:

CRXDEで
<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> 

、これをすることによって達成することができます同じ階層の作成:

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

クイックサイドヒント:ドロップダウンリストをラジオボタンに変更するには、selectListで 'type =" select "を' type = "text" 'に変更します。 –

+1

ありがとうございます。 –