我在freemarker中写了一个宏:
<#macro Hidden name value >
<input name="${id}" value="${value}" type="hidden" />
</#macro>
然后我在我的网页中使用它:
<@Hidden name="user_id" value=user_id />
<@Hidden name="user_name" value=user_name />
<@Hidden name="age" value=age />
<@Hidden name="address" value=address />
name
始终等于value
,但name
是字符串,value
是ModelMap
中的动态变量。我想简化macor然后我可以这样使用:
<@Hidden name="user_id" />
<@Hidden name="user_name" />
<@Hidden name="age" />
<@Hidden name="address" />
所以如何修改宏。
答案 0 :(得分:1)
您可以这样做:
<#macro Hidden name>
<input name="${name}" value="${.vars[name]}" type="hidden" />
</#macro>
但你也可以使用&lt; @ spring.bind /&gt;库来实现这一目标:https://svn.apache.org/repos/asf/qpid/tags/pre-M1/java/java/management/core/lib/spring/spring.ftl