在一个Action
类中,我有Map<String, List<String>> countryMap
.
假设countryMap
的key
是字母表中的字母,值是以相应键开头的 Country 对象。
例如:
键:A
值:列表包含Australia, Angola, Algeria
等。
我想在JSP中做两个动态下拉菜单。
下拉列表 1 如下所示:
<select>
<option value="A">A</option>
<option value="B">B</option>
</select>
在下拉列表中,两个将显示值,具体取决于下拉列表 1 上的键。例如,我在下拉列表 1 中选择 A,下拉列表将填充值。
下拉列表 2 如下所示:
<select>
<option value="Australia">Australia</option>
<option value="Angola">Angola</option>
</select>
我正在考虑使用 Struts 2 的标签<s:select>
或最大化 JSTL。我不知道如何开始。我不熟悉这些功能。有了这些复杂的代码,我可能需要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>
示例。