【问题标题】:Print a java variable with HTML code in a Facelet file在 Facelet 文件中打印带有 HTML 代码的 java 变量
【发布时间】:2013-06-07 11:06:15
【问题描述】:

是否可以获取 bean 变量中的 HTML 代码并将其作为 HTML 代码而不是文本打印在 Facelets 文件中?

例子:

myBean.java

public String getMyHtmlCode(){
    return "<span class="little">Internet</span> 100Mb <span class="little">+television</span>"
}

文件.xhtml

 <h2>#{myBean.myHtmlCode}</h2>

但是在导航器中出现

<span class="little">Internet</span> 100Mb <span class="little">+television</span>

并且不被解释为 html。

有什么想法吗?

【问题讨论】:

标签: html jsf javabeans facelets


【解决方案1】:

用他评论中的 BalusC 的话来说:

(你)应该只禁用文本的默认转义

<h2>
    <h:outputText value="#{myBean.myHtmlCode}" escape="false" />
</h2>

请注意,此代码容易出现XSS attacks

【讨论】:

  • 不,他不应该转义文本。他应该只禁用文本的默认转义。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-12-27
  • 1970-01-01
  • 1970-01-01
  • 2018-10-18
  • 2018-10-04
  • 1970-01-01
相关资源
最近更新 更多