java - 在 Struts2 中使用 Map 进行双重选择

标签 java struts2

我正在尝试使用doubleselect使用此 link 来自 Struts2 的标记作为指导。当我选择电话国家/地区代码(例如:91、92、216)时,它应该显示该国家/地区的三个城市。

为此我有一个Map<Integer, List<String> 。下面是标签。

<s:doubleselect 
   name="obj.countryCode" id="countryCode" list="countryCodeCityNameMap.keySet()"
   doubleName="obj.cityName" doubleId="cityName" doubleList="countryCodeCityNameMap" />

这会产生不同的输出。在第一个下拉列表中,它正确显示国家/地区代码。但无论第一个下拉列表中选择的值如何,它总是显示第二个下拉列表中的所有值,如下所示:

[aaa,bbb,ccc]
[ddd,eee,fff]
[ggg,hhh,iii]

如何使用 map 获得所需的输出? 我应该根据给定的链接创建这样的结构:

List<Makes> // in first drop-down
Makes contains makeId, modelId and List<Models> // List<Models> in second drop-down
Models contains modelId and modelName

如果是,那么我的场景如何适应这个模型?

最佳答案

IF the top object is still available ,您应该能够使用它对内部列表进行子过滤,如下所示:

<s:doubleselect 
         name="obj.countryCode"    id="countryCode"    list="countryCodeCityNameMap.keySet()"
   doubleName="obj.cityName" doubleId="cityName" doubleList="countryCodeCityNameMap.get(top)"
/>

关于java - 在 Struts2 中使用 Map 进行双重选择,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37862756/

相关文章:

java - struts2 的 log4j 配置

java - 注入(inject) Autowiring 的依赖项失败;嵌套异常是 org.springframework.beans.factory.BeanCreationException :

java - 计算两个整数之间的质数时遇到问题

java - 返回接口(interface)对象的列表

java - 关于在java中绘制多边形

css - 外部 CSS 属性干扰 struts 2 单选按钮布局

java - 从 Action 名称 : Struts 2 获取 URL

java - 本地化异常(在 Struts2 应用程序内)

java - 根据 TLD 或标签文件中的属性指令,属性名称不接受任何表达式

java - 如何坚持EhCache开源?