2015-03-31 44 views

回答

0

Hy Suresh,

這裏是快速修復!

在我的示例中,您需要使用第二個SelectItem來保存目的,並且使用FocusHandler

我的例子:

LinkedHashMap<String, String> valueMap = new LinkedHashMap<>(); 
    valueMap.put("a", "a"); 
    valueMap.put("b", "b"); 
    valueMap.put("c", "c"); 
    valueMap.put("d", "d"); 
    valueMap.put("e", "e"); 
    valueMap.put("f", "f"); 

    final SelectItem saveSelectedItem = new SelectItem(); 
    saveSelectedItem.setMultiple(true); 
    saveSelectedItem.setValueMap(valueMap); 

    final SelectItem selectedItem = new SelectItem(); 
    selectedItem.setDefaultValue("Default"); 
    selectedItem.setMultiple(true); 
    selectedItem.setTitle("Select: "); 
    selectedItem.setValueMap(valueMap); 
    selectedItem.addFocusHandler(new FocusHandler() { 

     @Override 
     public void onFocus(FocusEvent event) { 
      if(selectedItem.getValue() == null){ 
       selectedItem.setValue(saveSelectedItem.getValue()); 
      }else { 
       saveSelectedItem.setValue(selectedItem.getValue()); 
      }    
     } 
    }); 

那麼用戶將能夠UN /選擇所有值,但值將被設置爲持續在了SelectItem字段中選擇值。

希望INT幫助。

Regards Jakov A.

相關問題