在
Action
班上,我有 Map<String, List<String>> countryMap
。
假设
key
中的 countryMap
是字母表中的字母,值是以相应键开头的 Country 对象。
例如:
按键:
A
值:列表包含
Australia, Angola, Algeria
等
我想在 Struts 2 中制作两个动态下拉菜单。
下拉菜单 1 看起来像:
<select>
<option value="A">A</option>
<option value="B">B</option>
</select>
在下拉列表 2 中,将根据下拉列表 1 上的键显示值。例如,我在下拉列表 1 中选择 A,下拉列表将填充值。
下拉菜单 2 看起来像:
<select>
<option value="Australia">Australia</option>
<option value="Angola">Angola</option>
</select>
我正在考虑使用Struts 2的
<s:select>
标签。我不知道如何开始。我不太熟悉这些功能。对于这个复杂的代码,我可能需要 JavaScript 的参与。我很难开始开发代码。
让两个标签在同一页面上相互通信如果没有 JavaScript 是不可能的。幸运的是,有 Struts2 doubleselect
标签可以在这种情况下使用。
它呈现两个 HTML 选择元素,第二个元素根据第一个元素的选定条目更改显示值。
<s:doubleselect label="Select country/state" name="country" list="{'country1','other'}" doubleName="state" doubleList="top == 'country1' ? {'state1', 'state2'} : {'state3', 'state4'}" />
有关真实示例,请参阅 Struts 2 <s:doubleselect>
示例。