Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/vba/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/batch-file/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
是否可以使用java变量将HTML直接插入velocity模板?_Java_Velocity - Fatal编程技术网

是否可以使用java变量将HTML直接插入velocity模板?

是否可以使用java变量将HTML直接插入velocity模板?,java,velocity,Java,Velocity,考虑以下java变量声明: String s=“请在Facebook上关注我们” 并考虑以下速度模板: <html> <body> ... <div>$!s</div> ... </body> </html> ... $!s ... 这能像预期的那样工作吗?或者,可以通过java变量直接将HTML插入DOM吗 我假设没有-我猜HTML字符会被转义 我正在努力创建一些通用模板,以便

考虑以下java变量声明:

String s=“请在Facebook上关注我们”

并考虑以下速度模板:

<html>
    <body>
    ...
    <div>$!s</div>
    ...
    </body>
</html>

...
$!s
...
这能像预期的那样工作吗?或者,可以通过java变量直接将HTML插入DOM吗

我假设没有-我猜HTML字符会被转义

我正在努力创建一些通用模板,以便尽可能多地重复使用,因此我可能会自己测试这个模板,但我想问一下,如果有人知道他们的想法,我是否可以为自己节省一点时间。此外,我在velocity文档或stackoverflow中找不到任何关于此的信息。

是的,这是可能的

Velocity不会转义HTML本身,因为它并非仅用于HTML。通常,它不知道用它生成什么类型的文本

Velocity包含一个转义工具,可用于显式转义所需内容:

如果您打算使用Velocity生成HTML,我建议您只使用字符串变量,并转义传递给它以供输出的所有变量。如果需要不转义某些变量,请使用白名单(即在转义器中不转义的变量名称的显式列表)

这种方法将允许实现“默认转义”策略。

也有同样的问题


我们发现还有指令
#disable_html_escaping()
,您可以将它放在模板的开头。

@anon58192932欢迎您!如果答案对你有帮助,请接受它。我在等待冷却期接受答案。。。。我忘了,对不起:)