我正在使用struts 1.3,我希望能够提供不同选项的下拉列表,如下所示:
以下示例采用以下格式:
Radio button: dropdown value 1
dropdown value 2
English: good morning
hello
French: bonjour
salut
Spanish: buenos dias
hola
我的地图如下:
[[English, {good morning, hello}][French, {bonjoue, salut}][Spanish, {buenos dias, hola}]]
所以我的JSP看起来像这样(半伪代码):
For each item in the map:
set optionList = item.values;
If item.key == English {
Radio button English:
}
If item.key == French {
Radio button French:
}
If item.key == Spanish
Radio button Spanish:
}
<html:select property="salutation">
<html:optionsCollection name="optionList" label="key" value="value"/>
</html:select>
End for each
问题在于我最终得到了tis:
English: good morning
hello
bonjour
salut
buenos dias
hola
French: good morning
hello
bonjour
salut
buenos dias
hola
Spanish: good morning
hello
bonjour
salut
buenos dias
hola
我会假设在每次迭代时都会使用正确的值打印optionList,但似乎并非如此。我也尝试在每个IF语句中复制html:select代码,但结果相同,似乎在评估之后。
我愿意接受更好的实施建议。如果我需要进一步澄清,请告诉我。
谢谢,
答案 0 :(得分:0)
看起来您正在使用地图的entrySet()
作为选项集合。但是您需要通过地图中的键获取选项列表。使用映射的keySet()
的迭代器,并将选项集合定义为值。