2014-08-30 40 views
0

我從一個視圖中獲取列值的列表,我將其輸入到組合框中以選擇一個值並將其存儲在一個字段中。從外觀和感覺上來說,我想將這份清單列入dijit.Menu我並沒有在dojo方面做過很多工作,也沒有找到一個能夠指引我朝着正確方向的例子。使用類似組合框的dijit.Menu來選擇一個值

+0

你試過這裏的例子嗎? http://dojotoolkit.org/reference-guide/1.10/dijit/Menu.html – 2014-08-30 17:59:07

回答

2

您可以使用從EXTLIB下拉按鈕,這將提供類似的外觀和感覺:

<xe:dropDownButton 
     id="dropDownButton1"> 
     <xe:this.treeNodes> 
      <xe:basicContainerNode> 
       <xe:this.label><![CDATA[#{empty viewScope.myValue?"Select a value...":viewScope.myValue}]]></xe:this.label> 
       <xe:this.children> 
        <xe:basicLeafNode 
         label="Label 1" 
         submitValue="value1"> 
        </xe:basicLeafNode> 
        <xe:basicLeafNode 
         label="Label 2" 
         submitValue="value2"> 
        </xe:basicLeafNode> 
       </xe:this.children> 
      </xe:basicContainerNode> 
     </xe:this.treeNodes> 
     <xp:eventHandler 
      event="onItemClick" 
      submit="true" 
      refreshMode="partial" 
      refreshId="dropDownButton1"> 
      <xe:this.action><![CDATA[#{javascript:var value=context.getSubmittedValue(); 
if(value!=null && value!="") viewScope.myValue=value;}]]></xe:this.action> 
     </xp:eventHandler> 
    </xe:dropDownButton> 

這裏,viewScope.myValue是祕密數據綁定。您必須分別處理數據驗證(可能通過inputHidden組件)。您也可以使用repeatTreeNode而不是beanLeafNode,因此您可以計算選項列表。

+0

,與repeatTreeNode一起使用。我嘗試設置dropDownButton的樣式,使其顯示固定寬度並更改背景顏色,但樣式設置對按鈕沒有任何影響。我也禁用了主題,看起來並沒有太大的作用。公寓從它工作正常。 – 2014-08-30 23:08:36

+0

要設置主按鈕的樣式,首先需要爲'basicContainerNode'設置styleClass。它將設置包裝按鈕的範圍的類。然後你可以使用'.myContainer按鈕{...}'作爲CSS規則。 – 2014-08-31 07:24:02

相關問題