2012-05-03 71 views
6

我正在使用Twitter Bootstrap。將HTML添加到<h:messages />

警報HTML代碼:

<div class="alert alert-block"> 
    <a class="close" data-dismiss="alert" href="#">×</a> 
    <h4 class="alert-heading">Warning!</h4> 
    Best check yo self, you're not... 
</div> 

我使用<h:messages />顯示我的形式錯誤,信息和警告消息是這樣的:

<h:messages errorClass="alert alert-error" infoClass="alert alert-info" warnClass="alert alert-warning"/> 

的顏色和圓潤的邊角都OK,但我需要添加關閉鏈接:

<a class="close" data-dismiss="alert" href="#">×</a> 

我該怎麼做與<h:messages/>

編輯

如果需要更好的理解,這裏是Twitter的引導鏈接的通知方式: http://twitter.github.com/bootstrap/components.html#alerts

回答

7

通過BalusC

Using HTML in JSF messages

看看這篇文章
+0

感謝您的鏈接,但我不明白的地方以及我將如何將「×」添加到我的消息中,你能解釋一下嗎? – Gerep

+0

我猜你通常添加消息的方式... FacesContext context = FacesContext.getCurrentInstance(); context.addMessage(null,new FacesMessage(你的消息在這裏...消息應該從服務器端添加...例如String myMessage =「這裏是文本/ HTML代碼...」 – Daniel

+0

好的...我' m會開始這樣做,我在'html'文件中這樣做:''並在我的'form'的頂部添加一個'',謝謝 – Gerep

3

只需使用omnifaces o:messages。問題將被解決。

<o:messages escape="false"/>

0

另一種解決方案是

<div class="alert alert-danger alert-dismissible fade in" role="alert" jsf:rendered="#{not empty facesContext.getMessageList('InputPassword')}"> 
    <button type="button" class="close" data-dismiss="alert"><span aria-hidden="true">×</span><span class="sr-only">Close</span></button> 
    <strong>Error </strong> <h:message for="InputPassword" /> 
            </div> 

及其對JSF 2.2,但你能適應JSF以前的版本..