0

EL一样,是否可以在常规 HTML中使用s: 标记之外的任何OGNL 表达式?

例如,如果我想在 EL 中获取某个 bean 的值,我会 <div>${beanName.propertyName}DIV块内做一些事情。

如何使用 OGNL 做到这一点。我有一个代码块:

    <s:iterator value="parentBean.qna" var="questionAndAnswers"
                status="qIndex">
      <li>
        <s:label theme="simple"
                 value="Question %{#qIndex.index+1} - %{#questionAndAnswers.question}"/>

        <ul>
        <s:iterator value="%{#questionAndAnswers.answers}" var="answer" status="answersStat">
        <li>            
        <input  type="radio" name="parentBean.answerMap['%{qIndex}']" />'
        value='<s:property value="%{#answersStat.index}"/>'><s:property value="%{#answer}" /></input>
        </li>
        </s:iterator>
        </ul>
        <br/>
      </li>
    </s:iterator>

它说input type="radio" name="parentBean.answerMap['%{qIndex}']" ... 我希望qIndex用当前索引动态替换的值,以便可以将值设置为后面的相应键。因此,如果是parentBean.answerMap[1],我假设 Action 处的地图将具有key=1输入的 and 值。

有什么帮助吗?

4

1 回答 1

1

不使用 OGNL 语法,不;JSP 对 OGNL 一无所知。

S2 的请求包装器将允许使用 JSP EL 语法(${}

当然,您不需要标签的属性中使用<s:property value="#qIndex.index"/>,就像对value属性所做的那样。

于 2012-08-31T22:46:01.713 回答