1

我有一个基于 html:form 操作的带有提交的 jsp。

<html:form action="/nextPath">

我想根据变量或当前路径设置动作..等

<d:isActionPath path="/path1" >
    <html:form action="/nextPath1">
</d:isActionPath>

<d:isActionPath path="/path2" >
    <html:form action="/nextPath2">
</d:isActionPath>

这不起作用。但这本质上是我想做的。

有什么建议么?对struts来说很新。

4

2 回答 2

1
<d:isActionPath path="/path1" >
    <c:set var="theAction" value="/nextPath1"/>
</d:isActionPath>

<d:isActionPath path="/path2" >
    <c:set var="theAction" value="/nextPath2"/>
</d:isActionPath>

<html:form action="${theAction}">
    ...
</html:form>

JSP 标记必须正确平衡,就像在 XML 文档中一样。您无法在未关闭标签的情况下打开标签d:isActionPath、打开标签html:form和关闭标签。d:isActionPathhtml:form

于 2012-06-25T21:50:24.947 回答
1

我有一个类似的问题:

无法检索操作 /${theAction} 的映射

我用 <%= theAction %> 替换了$ {theAction} ,它对我有用(struts 1.2.9、J2SE-1.5 和 jboss-4.2.3.GA)。

因此,您可以尝试以下方法:

<% String theAction = "/nextPath"; %>
<d:isActionPath path="/path1" >
    <% theAction = "/nextPath1"; %>
</d:isActionPath>

<d:isActionPath path="/path2" >
    <% theAction = "/nextPath2"; %>
</d:isActionPath>

<html:form action="<%= theAction %>">
    ...
</html:form>

编辑:实际上我很困惑,为什么它使用<%= %>符号?是因为没有正确解释html标签吗?

于 2012-12-12T11:40:21.650 回答