1

我有一张带有键值对的地图。我想在下拉列表中显示键,并将值发送到服务器以识别选择的内容。

我正在使用 Struts2。我尝试放入Map标签<s:select>list但它显示下拉列表中的值。

4

2 回答 2

4

标签的使用listKeylistValue属性<s:select>从对象列表中获取属性。

为了交换 map 中的键和值,将value inlistKeykey in listValue

<s:select list="someMap" listKey="value" listValue="key"/>
于 2013-12-06T09:33:19.913 回答
2

据您所知,Struts 2 中的下拉菜单可以与List任何其他集合一起使用,例如Map. 它使用 OGNL 来检索选项文本和值的值。

与 的不同之List处在于,Map通过转换entrySet()并迭代以获取Map.Entry选择选项的元素。

此对象可用于映射 akeyvalue用于下拉列表。它具有对 OGNL 填充下拉列表有用的方法getKey()getValue()第一个用于填充value属性,如果它被选中则提交给操作,第二个用于填充选项的文本。

如果您的下拉菜单显示值,那么您将它们映射错误。这些值应映射为 的键Map,并将文本显示为值。

于 2013-12-06T11:17:44.943 回答