代码之家  ›  专栏  ›  技术社区  ›  Malin

我可以在错误消息控件中显示HTML吗?

  •  1
  • Malin  · 技术社区  · 6 年前

    在我的xpages应用程序中,我们使用引导来创建主题。

    如果我查看警报组件:

    <div class="alert alert-danger" role="alert"> <strong>WARNING</strong> SYSTEM FAILURE. </div>
    

    我看到使用了一个元素。

    现在在我的xpages应用程序中,我使用了如下内容:

    FacesContext.getCurrentInstance().addMessage(null, new javax.faces.application.FacesMessage(javax.faces.application.FacesMessage.SEVERITY_ERROR, "<strong>WARNING</strong> SYSTEM FAILURE", ""));
    

    但它显示为文本:

    enter image description here

    是否以某种方式使错误消息控件显示HTML?

    2 回复  |  直到 6 年前
        1
  •  0
  •   Tom Van Aken    6 年前

    您可以这样编写自己的消息控件:

    <xp:panel styleClass="xspMessage"
        rendered="#{javascript:facesContext.getMessages().hasNext()}">
        <xp:repeat id="repeat1" rows="30" var="msg">
            <xp:this.value><![CDATA[#{javascript:var v = new java.util.Vector();
    var itr = facesContext.getMessages()     
    while(itr.hasNext()) {
        var element:javax.faces.application.FacesMessage = itr.next();
        v.add(element.getSummary())
    }
    return v;}]]></xp:this.value>
            <xp:text escape="false" id="computedField1" value="#{msg}"  tagName="div">
            </xp:text>
        </xp:repeat>
    </xp:panel>
    
        2
  •  0
  •   Howard    6 年前

    更好的方法是使用css格式化错误消息控制输出。