收到此错误:“与元素类型“h:outputText”-6ren">
gpt4 book ai didi

html - 如何在 h :outputText Bold? 中创建值的一部分

转载 作者:搜寻专家 更新时间:2023-10-31 23:01:51 24 4
gpt4 key购买 nike

如何使 h:outputText 中的值的一部分变为粗体?我想要粗体的名字:

<h:outputText value="Normal Text: #{Controller.Object.name}" />

我试过:<h:outputText value="Normal Text: <b>#{Controller.Object.name}</b>" />

收到此错误:“与元素类型“h:outputText”关联的属性“value”的值不得包含“<”字符。在此处和其他页面进行一些搜索后,发现属性 escape="false"可以解决这个问题...但对我来说没有任何区别,

<h:outputText escape="false" value="Normal Text: <b>#{Controller.Object.name}</b>" />

仍然有同样的错误。

有人遇到过这个问题吗?

最佳答案

你真的需要<h:outputText>吗?

在 Facelets 中,您可以只在模板文本中使用 EL:

Normal Text: <b>#{Controller.Object.name}</b>

如果你真的坚持用<h:outputText> , 那么你确实应该手动转义 XML 实体并用 escape="false" 显示它:

<h:outputText value="Normal Text: &lt;b&gt;#{Controller.Object.name}&lt;/b&gt;" escape="false" />

这不仅读起来更难看,而且还会打开 XSS 攻击漏洞以防 #{Controller.Object.name}是客户端控制的值。

另见:

关于html - 如何在 h :outputText Bold? 中创建值的一部分,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28433340/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com