1

是否可以使用弹簧标签(弹簧形式标签库,用于数据绑定)中的标签(弹簧标签库)从.properties消息文件中检索消息。spring:messageform:input


src/main/resources > texts.properties(文件)

testEntry=Test entry

src/main/webapp/WIN-INF/JSP > test.jsp

如果我尝试这样做:

<%@taglib prefix='spring' uri='http://www.springframework.org/tags'%>
<%@taglib prefix='form' uri='http://www.springframework.org/tags/form'%>

<form:input path="test" placeholder='<spring:message code="testEntry">'/>

结果我得到了<spring:message code="testEntry">一个占位符而不是Test entry


如果我尝试这样做:

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

<c:set var="placeholder" value='<spring:message code="testEntry">'/>
<form:input path="test" placeholder='${placeholder}'/>

我得到相同的结果。我明白这个问题。但是在 JSP 中是否有另一种方法可以使带有适当代码的消息显示为 spring-form 标记的属性值?

4

1 回答 1

5

您可以使用标签的var属性message将解析的消息分配给命名变量。然后,您可以将该变量用作 EL 变量。

<spring:message code="testEntry" var="placeholder" />
<form:input path="test" placeholder='${placeholder}'/>

这会将已解析的消息分配testEntry给一个名为的变量placeholder,然后您可以在输入标签中使用该变量。

于 2016-02-25T07:01:04.750 回答