Struts 2 s:未预先选择optgroup元素

时间:2014-08-18 12:17:11

标签: jsp struts2

问题:当使用支持多选(s:select)的select(multiple="true")元素和选项组(s:optgroup)时,如果该字段具有与选项元素对应的值组元素,它们不会默认选中。

类似的配置可以按预期工作:

  • list中的s:optgroup被提供为s:select元素的列表时,默认选择正确的选项。
  • 如果同一个或不同的列表同时适用于s:selects:optgroup,则s:select中的元素将被正确选中,但s:optgroup中的元素将不会
  • s:select元素仅支持单个选择(无multiple="true"),并且字段(mySelections)更改为整数而不是列表时,默认选择正确的选项。< / LI>

在所有情况下(问题案例和类似案例都按预期工作),所选元素正在被正确地提交给操作,正如人们所期望的那样,因为那时它只是HTML。

导致问题的JSP:

<s:select
    name="mySelections"
    list="#{9:'Z'}"
    multiple="true"
    size="5">
    <s:optgroup
        label="List A"
        list="#{1:'A',2:'B',3:'C'}" />
    <s:optgroup
        label="List B"
        list="#{4:'D',5:'E'}" />
</s:select>

关于它与UI主题有关的机会,我试图反对&#34;简单&#34; (我实际使用的那个)和默认值(&#34; xhtml&#34;),但这两个问题都存在。

open JIRA issue看起来相关,因为用户的示例确实指定了多选字段,但用户不确定单选是否有效。

如果这是JIRA问题所暗示的已知问题,是否存在已知的解决方法?但是,如果这是Struts2的一个问题,似乎更频繁地注意到这一点,因此我怀疑这是我的错误,而不是引起问题的框架。

我的实际案例与上面的示例之间的差异:在我的实际案例中,list是操作的属性,而不是静态,而s:select列表没有元素({} )。

Struts 2的版本是2.3.16.2。


我的期望是建议的解决方法是使用JSP生成select标记及其后代。如果是的话,有没有&#34;陷阱&#34;关于在我的界面中使用非Struts标签?

0 个答案:

没有答案