1

rich:calendarコンポーネントで休日を変更する必要があります。デフォルトでは、コンポーネントは休日を「日曜日」と「土曜日」として表示します。

以下は、休日を強調するために定義されたスタイルクラスです。

.rich-calendar-holly
{
background-color: #FFEBDA;
}

このスタイルを土曜日と日曜日ではなく、金曜日と土曜日に機能させたいです。誰かが私にそれをリッチフェイスで達成する方法をアドバイスできますか?休日を設定するために利用できる属性はありますか?

前もって感謝します。

4

1 に答える 1

2

カスタムCalendarDataModelを定義して、金曜日と土曜日の特定のcssクラスを返すようにすることができます。

public class CalendarModelItem implements CalendarDataModelItem {
   //rest of code
   private String styleClass;
   public void setStyleClass(String styleClass) { this.styleClass = styleClass; }
   public String getStyleClass() { return styleClass; }
   //rest of code
}

public class CalendarModel implements CalendarDataModel {
    //rest of code
    public CalendarDataModelItem[] getData(Date[] dateArray) {
       CalendarDataModelItem[] modelItems = new CalendarModelItem[dateArray.length];
       Calendar c = Calendar.getInstance();
       for (Date d : dateArray) {                
            c.setTime(d);
            CalendarModelItem modelItem = new CalendarModelItem();
            if (calendar.get(Calendar.DAY_OF_WEEK) == Calendar.FRIDAY || calendar.get(Calendar.DAY_OF_WEEK) == Calendar.SATURDAY) {
                modelItem.setStyleClass("weekend");
            } else {
                modelItem.setStyleClass("");
            }
            modelItems[i] = modelItem;
       }
       return modelItems;
    }
    //rest of code
}

カスタムcssクラスを定義し、rich-calendar-hollyでフォーマットをリセットします

.rich-calendar-holly{
 background-color:white;
 color:black;
}
.weekend {
 background-color: #FFEBDA;
}

次に、これをカレンダーコンポーネントで使用します

<rich:calendar ... dataModel="#{calendarModel}" />
于 2013-01-15T10:21:14.603 に答える