提交Struts2迭代器索引作为映射键不起作用

时间:2017-01-25 21:00:34

标签: java jsp struts2

我遇到了一个有趣的问题,我无法弄清楚它是什么。

我有一个显示文本字段的struts迭代器。定义如下:

    <s:form action="AddSubmit" method="post" theme="simple">
        <s:iterator status="rowStatus" value="otherList">
                <div>
                   <span>Input Value:</span>
                   <s:textfield theme="simple" 
                        name="valueMap[%{#rowStatus.index} + '-custom'].inputValue"/>
                                    </div>
        </s:iterator>
        <s:submit value="Save" theme="simple" />
   </s:form>

当我提交时,迭代器值%{#rowStatus.index}不会计算任何值,并且永远不会设置值,但是当我对像0这样的键进行硬编码时,它会起作用。对于发生了什么有什么想法?

1 个答案:

答案 0 :(得分:1)

这应该有效:

name="%{'valueMap[\\'' + #rowStatus.index + '-custom\\'].inputValue'}"

%{ OGNL expression }用于强制OGNL评估通常被解释为字符串文字的属性。