Java 逃逸美元登录速度
我在velocity模板文件中有这样一个字符串:Java 逃逸美元登录速度,java,string,parameters,velocity,Java,String,Parameters,Velocity,我在velocity模板文件中有这样一个字符串: <a id="superurl_${getItemid()}" href="http://example.com?$param1=345&$param2=abf¶m3=${par3}">link1</a> 这就意味着 <a id="superurl_1288" href="http://example.com?$param1=345&$param2=abf¶m3=
<a id="superurl_${getItemid()}" href="http://example.com?$param1=345&$param2=abf¶m3=${par3}">link1</a>
这就意味着
<a id="superurl_1288" href="http://example.com?$param1=345&$param2=abf¶m3=${par3}">link1</a>
但是,应将其呈现为
<a id="superurl_1288" href="http://example.com?$param1=345&$param2=abf¶m3=zzz">link1</a>
如何修改源代码,使${par3}
按其值呈现,而不被视为字符串的一部分?您可以使用#[[…]]#
在Velocity中转义字符串。我认为在你的情况下,前面的美元可能与后面的美元相冲突。请尝试以下操作:
<a id="superurl_${getItemid()}" href="#[[http://example.com$param1=345&$param2=abf¶m3=]]#${par3}">link1</a>
另外,确保您实际传递了一个名为“par3”的变量。(这很可能是它没有被解析的原因?您可以像这样为美元符号设置一个变量
#set ( $d = "$")
<a id="superurl_${d}{getItemid()}" href="http://example.com?$param1=345&$param2=abf¶m3=${par3}">link1</a>
#set($d=“$”)
@Bathsheba抱歉,已尝试\$和\$和$$。不起作用。