如何将 spring 表单输入占位符属性值引用到消息源 属性?
How to reference a spring form input placeholder attribute value to a message source property?
是否可以在 spring-[=17= 中使用 spring:message
标签(spring 标签库)从 .properties
消息文件中检索消息]标签(spring表单标签库,用于数据绑定)。
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 标记的属性值?
您可以使用 message
标记的 var
属性将已解析的消息分配给命名变量。然后您可以将该变量用作 EL 变量。
<spring:message code="testEntry" var="placeholder" />
<form:input path="test" placeholder='${placeholder}'/>
这会将 testEntry
的已解析消息分配给名为 placeholder
的变量,然后您可以在输入标记中使用该变量。
是否可以在 spring-[=17= 中使用 spring:message
标签(spring 标签库)从 .properties
消息文件中检索消息]标签(spring表单标签库,用于数据绑定)。
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 标记的属性值?
您可以使用 message
标记的 var
属性将已解析的消息分配给命名变量。然后您可以将该变量用作 EL 变量。
<spring:message code="testEntry" var="placeholder" />
<form:input path="test" placeholder='${placeholder}'/>
这会将 testEntry
的已解析消息分配给名为 placeholder
的变量,然后您可以在输入标记中使用该变量。