jstl fn:长度标记在jsp中的spring form标记内不起作用

时间:2013-02-15 13:32:44

标签: forms jsp spring-mvc jstl

<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form"%>
<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions"%>

在“form:form”中

<form:form class="form-container" name ="feedback_popup_form" id="feedback_popup_form"    action="savefeedback" method="post" modelAttribute="feedbackVO" commandName="feedbackVO">

<form:input type="hidden" path="strEmplRefrlSeq" value="${model.strEmplRefrlSeq}" />

<input type="hidden" id="mady" value = "${fn:length(model.strEmplRefrlSeq)}" />

在萤火虫中我得到了

<input id="strEmplRefrlSeq" type="hidden" value="2,10,11," name="strEmplRefrlSeq">
<input id="mady" type="hidden" value="0">

我的fn:长度不适用于字符串输入。你能解释一下为什么会这样吗?

1 个答案:

答案 0 :(得分:0)

表单支持对象位于名称“feedbackVO”下,所以我猜你确实需要

<input type="hidden" id="mady" value="${fn:length(feedbackVO.strEmplRefrlSeq)}" />

请注意,form:input标签没有任何value属性,因此您的代码等同于:

<form:input type="hidden" path="strEmplRefrlSeq" />

从路径生成HTML的输入值属性,在命令对象中获取值。