1

動的に入力される複数選択ドロップダウンを使用しています。ドロップダウンリストから選択したすべての値を取得するにはどうすればよいですか?私は支柱を使用しています。これがJSPのコードです。

<html:select= name="HForm" property="selPerson" multiple="multiple"> 
   <logic:iterate id="pplist" name="HForm" property="personList">
     <option value=<bean:write name="pplist" property="id"/>><bean:write name="pplist"     
      property="value"/></option>
    </logic:iterate> 
</html:select>

現在、フォームオブジェクトで以下のメソッドを使用して選択した値を取得しようとしていますが、これによりドロップダウンからすべての値が返されます。ユーザーが選択したものだけが必要です。

hform.getPersonList

フォームオブジェクト:HForm.java

  private List personList=new ArrayList();
  private List selPerson=new ArrayList();

使用してみhmf.getselPerson();ましたが、エラーが発生します:

PropertyUtils E org.apache.commons.beanutils.PropertyUtilsBean invokeMethod Method invocation failed. java.lang.IllegalArgumentException: argument type mismatch

4

2 に答える 2

2

getSelPerson()メソッドの戻りタイプは、String[]複数選択ドロップダウン用である必要があります。

于 2012-11-27T13:00:20.050 に答える
0
<html:select property="selectedOption" styleId="exemple" multiple="multiple">                 
        <html:optionsCollection property="availableOption" label="name" value="ref" />
</html:select>

とても簡単な方法...

  • selectedOptionは、Java形式で宣言されたstring []になります(getterおよびsetterを使用)
  • availableOptionは、選択のために表示したいオブジェクトのArrayListになります(ここでは表示名)(getterとsetterも作成する必要があります)
于 2014-07-18T15:51:09.007 に答える