2013-04-21 18 views
1

我有一個Wicket應用程序。 在應用程序中,用戶可以用幾種形式填充幾個字段。WIcket的FeedbackPanel上有不同的CSS

我有一個特殊的地方在用戶得到反饋的底部(使用FeedbackPanel)。 反饋包括成功&錯誤消息。

問題是我想爲不同的消息使用不同的CSS樣式。

我已經有我想要實現的CSS樣式。 我可以在HTML表單中成功實現它們,但是我得到了兩種消息的相同CSS樣式。

我希望根據消息的不同嚴重程度對相同的反饋組件有不同的CSS樣式,所以如果消息是「錯誤」 - 我希望它具有特定的樣式,如果它是「成功」我希望它有不同的風格。

如何根據消息的嚴重性將FeedbackPanel指向特定的CSS樣式?

回答

5

您可以創建一個繼承FeedbackPanel和覆蓋getCSSClass方法

public class CustomFeedbackPanel extends FeedbackPanel { 

    public CustomFeedbackPanel(String id) { 
     super(id); 
    } 

    public CustomFeedbackPanel(String id, IFeedbackMessageFilter filter) { 
     super(id, filter); 
    } 

    @Override 
    protected String getCSSClass(FeedbackMessage message) { 
     String css; 
     switch (message.getLevel()){ 
      case FeedbackMessage.SUCCESS: 
       css = "alert success"; 
       break; 
      case FeedbackMessage.INFO: 
       css = "alert info"; 
       break; 
      case FeedbackMessage.ERROR: 
       css = "alert error"; 
       break; 
      default: 
       css = "alert"; 
     } 

     return css; 
    } 
} 
+0

謝謝你這麼多的一類。它的工作非常好! – Chaiavi 2013-04-21 12:19:34

+0

非常感謝。它的工作非常好! – Chaiavi 2013-04-21 12:20:20

+0

不客氣。 – 2013-04-21 12:22:47

相關問題