有条件地将模板文本呈现为粗体

Posted

技术标签:

【中文标题】有条件地将模板文本呈现为粗体【英文标题】:Conditionally render template text as bold 【发布时间】:2016-01-01 05:11:45 【问题描述】:

对于我的收件箱页面,在这个页面用户将能够看到消息,消息将有两种状态(尚未开始,In_progress)..

用户可以看到所有消息的数据表将有 3 列:

Data, title, actions

消息的状态来自于服务。我的任务是在用户尚未打开的每条消息的标题中添加 BOLDED 字样“NEW”。

打开后,状态会变为“in_progress”,粗体字“NEW”会消失。

或者有NEW的想法来使用某种图标。

到目前为止我所做的是:

<p:column headerText="#msg.title">
    <h:outputText value="#task.properties.bpm_status=='Not Yet Started'?'New ':''" />
    <h:outputText value="#task.properties.bpm_description" />
</p:column>

问题是,我无法正确添加 &lt;b&gt;&lt;/b&gt; 以使其加粗或添加图标。

我尝试添加 &lt;b&gt;&lt;/b&gt; arround 'New' 但在这种情况下我得到了错误。

【问题讨论】:

【参考方案1】:

尝试在"style="font-weight:bold"" in h:outputText Tag 中使用以下样式

 <h:outputText value="#task.properties.bpm_status=='Not Yet Started'?'New ':''" style="font-weight:bold"  />

我试过了,它对我有用

【讨论】:

【参考方案2】:

您可以使用&lt;ui:fragment&gt; 有条件地呈现模板文本。

<ui:fragment rendered="#task.properties.bpm_status eq 'Not Yet Started'">
    <b>New</b>
</ui:fragment>

或者,应用样式类。

<h:outputText value="New" styleClass="new" rendered="#task.properties.bpm_status eq 'Not Yet Started'" />
.new 
    font-weight: bold;

通过style 属性使用内联样式是不好的做法,因为它不是抽象的/可重用的。

【讨论】:

为什么谷歌不能给我这个... :) 谢谢,工作正常。 !

以上是关于有条件地将模板文本呈现为粗体的主要内容,如果未能解决你的问题,请参考以下文章

将 UILabel 文本设置为粗体 [重复]

Django Forms:使表单发送到电子邮件的一些文本显示为粗体

如何将 HTML5 画布文本设置为粗体和/或斜体?

为啥我的所有 UIAlertView 标签/文本在 iOS 8 中默认为粗体

将部分数据工具提示文本设置为粗体

css 使表响应,第一行中的文本为粗体。