我想使用以下 JSTL 代码动态地将字符串值添加到commandName属性。
<c:choose>
<c:when test='${catalogueEntry==null}'>
add_item
</c:when>
<c:otherwise>
update_item
</c:otherwise>
</c:choose>
看起来spring将整个代码解释为字符串值,而不是赋值'add_item'或'update_item'。 我尝试使用javascript代码,但发现它给出了与客户端技术相同的错误。 谁能告诉我我的问题在哪里?
答案 0 :(得分:1)
只需使用EL ternary operator即可。在您的情况下,代码可以写成:
<form:form method="post" commandName="${(catalogueEntry==null) ? 'add_item' : 'update_item'}">
...
</form:form>