这听起来有点愚蠢,但我对它很困惑! 我正在尝试从请求中获取已发布的参数,并且我的html表单中有两个元素来自以下类型:
<select id="mapped_fields" name="mapped_fields_name" multiple style="width: 150px;">
.
.
.
.
options ..
</select>
我正在尝试在我的servlet中执行以下操作:
String[] values = request.getParameterValues("mapped_fields");
此行返回null!我试图更改html中的select并删除
multiple
我的行返回了正确的值! 当我尝试调试以下行时:
我得到了以下结果(我的所有字段除了选择):
{行动= [Ljava.lang.String; @ 3a1ceae6,
运动= [Ljava.lang.String; @ 4081bfd8}
任何想法?
答案 0 :(得分:3)
您必须将id="mapped_fields"
替换为name="mapped_fields"
。
此外,<option value="1">option1
无效,您应该这样使用:
<option value="1">option1</option>
答案 1 :(得分:3)
您需要将name
属性提供给select
<select name = "mapped_fields" id="mapped_fields" multiple="multiple" style="width: 150px;">
<option value="1">option1</option>
<option value="2">option2</option>
<option value="3">option3</option>
</select>
答案 2 :(得分:1)
要选择多个值, 试试这个,
<select name = "mapped_fields" multiple id="mapped_fields" style="width: 150px;">
<option value="1">option1</option>
<option value="2">option2</option>
<option value="3">option3</option>
</select>
倍而不是“多个”
希望它有所帮助!如果有效,请通知我