如何从JSP中的选择列表上的多个选定项创建一个javabean数组?

时间:2011-10-16 14:54:44

标签: jsp javabeans

我有一个选择列表,用户可以从此列表中选择多个选项。我想从这个列表中创建一个javabeans数组。我怎么做?服务类有两个属性。 serviceName和价格。我知道如何通过request.getParameterValues()获取servlet中的值,但是我需要在jsp表单中使用javabeans来执行此操作。

<jsp:useBean id="service" scope="session" class="package.class"/>
<jsp:setProperty name="service" property="*"/>

<select size="6" id="serviceSelect" name="Services" multiple="true">
                    <option value="Cleaning" >Cleaning</option>
                    <option value="Washing">Washing</option>
                    <option value="Painting">Painting</option> Security</option>
</select>

2 个答案:

答案 0 :(得分:0)

它必须是String[]属性,您必须将输入字段名称重命名为以小写字母开头,以便它符合Javabeans规范。

所以,

private String[] services; // +getter +setter

<select name="services">

应该这样做。

答案 1 :(得分:0)

如果你真的想在List of Beans而不是String数组中放置一个HTML多选所选值,那么最简单的方法就是创建一个自定义JSP标记。您可以执行类似myTags:advancedSelect标记的操作,其中包含所有必需的html和javascript代码以呈现HTML多选,然后在Tag支持类中,您可以获得在输入​​中选择的内容并构建任何对象的列表想要那个。