该JSTL
fmt标签库中存在的
<fmt:xxx>标签,而不是
${fmt:xxx}功能。相应地修复它:
<input type="text" name="${status.expression}" value="<fmt:formatDate pattern="MM/dd/yyyy" value="${status.value}" />" />/>(请注意,天数应表示为dd
,而不是mm
,年数应表示为yyyy
而不是YYYY
,有关所有有效模式,请参见SimpleDateFormat
javadoc。)
如果您的IDE急于嵌套标记(不过应该可以很好地运行),或者您不满意它,请利用该
var属性,以使HTML / XML的格式正确。
<fmt:formatDate pattern="MM/dd/yyyy" value="${status.value}" var="statusDate" /><input type="text" name="${status.expression}" value="${statusDate}" />如果您真的想拥有一个
${fmt:formatDate()}功能,则必须自己自行开发。您可以在此答案中找到启动示例。*根据评论 *更新 为,
${status.value}实际上是String格式的
yyyy-MM-dd。如果无法将其修复
Date为完全有价值,那么您需要
Date先在的帮助下
<fmt:parseDate>将其解析为,然后再提供给
<fmt:formatDate>。
<fmt:parseDate pattern="yyyy-MM-dd" value="${status.value}" var="parsedStatusDate" /><fmt:formatDate pattern="MM/dd/yyyy" value="${parsedStatusDate}" var="formattedStatusDate" /><input type="text" name="${status.expression}" value="${formattedStatusDate}" />


