我对 Spring 标签不是很熟悉,似乎我对一些我现在无法理解的问题感到震惊。
我在我的 jsp 中显示了两个选择标签,它们由 Arraylist 支持,这里的 map 是它们的代码
<form:select path="prsBTOData[${status.index}].colors" items="${prsBTOData.colors}"
cssClass="productDetailsSelect"/>
和
<form:select path="prsBTOData[${status.index}].fonts" items="${prsBTOData.fonts}"
cssClass="productDetailsSelect" >
颜色由数组列表支持,而字体由 Map 支持。下面是生成的 HTML
<select multiple="multiple" class="productDetailsSelect" name="prsBTOData[0].colors"
id="prsBTOData0.colors">
<option selected="selected" value="Red">Red</option>
<option selected="selected" value="Green">Green</option>
<option selected="selected" value="Black">Black</option>
</select>
<input type="hidden" value="1" name="_prsBTOData[0].colors">
我不知道为什么它会这样做multiple="multiple"
并且没有显示任何下拉列表,而仅显示RED
为选定值,而我期待一个带有下拉选项的列表。甚至不确定为什么会生成这个隐藏字段以及它的目的是什么?