如何使字符串'###'在速度上工作

时间:2014-02-28 02:02:12

标签: escaping velocity

感谢阅读。

我正在使用springmvc + velocity来构建我的应用程序。 在视图页面xxx.vm中,我想放一些这样的代码:

<a class="action-btn" href="###">action</a> (在所有浏览器中,"###""javascript:void(0);"的兼容性更高。)

我们已经知道,##的速度在java中像//这样的赞美命令。因此,代码在运行时将变为<a class="action-btn" href="

对于角色#有没有任何转义方法? (我已尝试过\#/#,但这些对我不起作用。)

2 个答案:

答案 0 :(得分:2)

您可以尝试:

#set($h = '#')
<a class="action-btn" href="$h$h$h">action</a>

这就是说,如果你使用的是Velocity-Tools,你也可以使用转义工具:

<a class="action-btn" href="$esc.h$esc.h$esc.h">action</a>

答案 1 :(得分:0)

您可以使用:

#[[###]]#

这逃脱了中间的文字。对于大型部分来说,这是一个很好的解决方案。

#[[
#foreach ($woogie in $boogie)
 nothing will happen to $woogie
#end
]]#

来源:http://velocity.apache.org/engine/devel/user-guide.html#escapingvalidvtlreferences