我正在尝试使用p:schedule
,但列标题显示的格式如下:EEE MM/dd
我真的需要切换到EEE dd/MM
。
研究primefaces论坛和google项目,我遇到了这个(以及其他几个主题):http://code.google.com/p/primefaces/issues/detail?id=2546
似乎解决了这个问题,但我对如何使用它来解决问题毫无头绪。
我不确定这个问题是否重复(因为这个问题已经存在了几年),但搜索SO并没有任何点击。
那么,我该如何更改列标题的格式呢?
我将展示示例导入到我的项目中,到目前为止,我的计划事件的配置是:
<p:schedule value="#{scheduleController.eventModel}"
widgetVar="myschedule" view="agendaWeek" allDaySlot="false"
slotMinutes="15" firstHour="7" showWeekends="FALSE"
leftHeaderTemplate="prev,next" rightHeaderTemplate=""
minTime="7am" maxTime="21pm" timeFormat="dd/MM hh:mm"
axisFormat="HH">
使用primefaces 3.3.1
答案 0 :(得分:0)
一个非常粗略的解决方案,我通过劫持计划页面的输出来修复这些标题,更改计划调用的javascript代码以便将格式放入其中:
我使用了Jeremy Stein (click to go to question)编写的类(是的,HTML输出的正则表达式,bash on),并使用过程监听特定页面输出的过滤器。
我使用了以下Pattern和Replace String:
Pattern. compile("timeFormat:(.*?), behaviors");
replaceString= "timeFormat: $1, columnFormat : { month : 'ddd' , week : 'ddd d/M' , day : 'dddd d/M' }, behaviors"
通过在输出中插入columnFormat属性,它开始正确地呈现标题。
我很想看到另一种解决Primefaces不愿意实现此功能的方法。
答案 1 :(得分:0)
我解决了它从primefaces(scheduler.js)攻击javascript的问题。只需在页面中添加此代码即可编辑日期格式:
if (PrimeFaces.widget.Schedule != undefined) {
PrimeFaces.widget.Schedule.prototype.init = function() {
this.cfg.titleFormat = {
month: 'MMMM yyyy',
week: "De d MMM [ yyyy]{ 'à' d [ MMM] 'de' yyyy}",
day: 'dddd, d MMM , yyyy'
};
this.cfg.columnFormat = {
month: 'ddd',
week: 'ddd d/M',
day: 'dddd M/d'
};
if(this.jq.is(':visible')) {
this.jqc.fullCalendar(this.cfg);
return true;
} else {
return false;
}
};
}
答案 2 :(得分:0)
我通过攻击&#34; columnFormat&#34;解决了这个问题。属性。
columnFormat="month:'ddd', week:'dd/MM', day:'dd/MM/yyyy'}, titleFormat: {day: 'dddd, dd \'de\' MMMM \'de\' yyyy'"
答案 3 :(得分:0)
使用最新版本的primefaces,现在已经解决了。 您只需在p:schedule标记中添加columnFormat =“ddd D / M”,如下所示:
<p:schedule value="#{scheduleController.eventModel}"
widgetVar="myschedule" view="agendaWeek" allDaySlot="false"
slotMinutes="15" firstHour="7" showWeekends="FALSE"
leftHeaderTemplate="prev,next" rightHeaderTemplate=""
minTime="7am" maxTime="21pm" timeFormat="dd/MM hh:mm"
axisFormat="HH" columnFormat="ddd D/M">