与EL一样,是否可以在常规HTML中使用OGNL expressions之外的任何s: tags?
例如,如果我想在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
和输入值。
任何帮助?
答案 0 :(得分:1)
不使用OGNL语法,不; JSP对OGNL一无所知。
S2的请求包装器将允许使用JSP EL语法(${}
)查询值堆栈,但我不相信会扩展到命名值(未推送的值)到堆栈,就像迭代器索引一样。)
当然,您不需要在您的代码的属性中使用<s:property value="#qIndex.index"/>
,就像您对value
属性一样。