如何获得多个选择值

时间:2013-01-10 14:08:50

标签: java jsp liferay

我想获得liferay中的项目列表。

我使用了<aui:select>标记:

<aui:select name="select" multiple="true">
    <aui:option value="one"></aui:option>
    <aui:option value="two"></aui:option>
    <aui:option value="three"></aui:option>
    <aui:option value="four"></aui:option>
</aui:select>

提交表单时,ProccessAction中没有参数。

String[] items =  actionRequest.getParameterValues("select");   
System.out.println(items);

如何提交多个选择项?

2 个答案:

答案 0 :(得分:3)

试试这段代码..

<aui:select name="select" id="select" multiple="true">
String[] items = ParamUtil.getParameterValues(request, "select");

for(String item : items){
    System.out.println(item);
}

希望这会对你有帮助!!!

感谢。

答案 1 :(得分:0)

问题在于portlet代码中的参数名称。当您使用aui taglig时,请记住它始终将一个命名空间(如 _yourPortletName_WAR_yourPluginName _ )添加到您的输入名称中。因此,您可以像这样更改代码:

String mySelectInputName = actionResponse.getNamespace() + "select";
String[] items =  actionRequest.getParameterValues(mySelectInputName);

替代方案:使用ParamUtil类而不是直接访问actionRequest。

希望得到这个帮助。

感谢。