如何使用JSTL c:选择更改表单操作

时间:2017-07-02 18:30:25

标签: java jsp jstl

我在jsp页面上有一个表单操作,我希望根据" user"被操纵是。

<c:choose>
        <c:when test="${user.user_username==username}">
            <form method="post" action="myinfo" class="form-horizontal">
        </c:when>   
        <c:otherwise>
            <form method="post" action="updated" class="form-horizontal">
        </c:otherwise>
</c:choose>

我在页面底部有一个提交按钮。根据被操纵的用户,我想将页面重定向到&#34; myinfo&#34;或者&#34;更新&#34;。但是我一直收到错误,说表单没有结束标记。我把它关在最底层,但我想这不是正确的做法。

1 个答案:

答案 0 :(得分:4)

使用<c:choose>将操作设置为变量,然后使用EL将其用于表单中。

<c:choose>
  <c:when test="${user.user_username==username}">
    <c:set var="formAction" value="myinfo" />
  </c:when>   
  <c:otherwise>
    <c:set var="formAction" value="updated" />
  </c:otherwise>
</c:choose>
<form method="post" action="${formAction}" class="form-horizontal">
  ...
</form>