2

具有内联模式的 Primefaces 日历以错误的方式显示:

素面日历

代码:
xHTML

<p:tab title="Logs">
<p:panelGrid columns="2" cellpadding="2" styleClass="logsGrid">
<p:accordionPanel id="accordionLogs" styleClass="logsAccordion">
<p:tab title="Log1"></p:tab>
<p:tab title="Log2"></p:tab>
</p:accordionPanel>
<p:calendar value="#{dateBean.date}" mode="inline" styleClass="logsCalendar">
<p:ajax event="dateSelect" listener="#{dateBean.handleDateSelect}" update=":growlMain" />
</p:calendar>
</p:panelGrid>
</p:tab>

班级:

package com.swql.sprint;

import java.text.SimpleDateFormat;
import java.util.Date;

import javax.faces.application.FacesMessage;
import javax.faces.bean.ManagedBean;
import javax.faces.context.FacesContext;

import org.primefaces.event.SelectEvent;

@ManagedBean
public class DateBean {

    private Date date;

    public Date getDate() {
        return date;
    }

    public void setDate(Date date) {
        this.date = date;
    }

    public void handleDateSelect(SelectEvent event) {
        Date date = (Date) event.getObject();
        FacesMessage msg = null;
        SimpleDateFormat format = new SimpleDateFormat("d/M/yyyy");
        msg = new FacesMessage(FacesMessage.SEVERITY_INFO, "Date Picked", format.format(date));
        FacesContext.getCurrentInstance().addMessage(null, msg);
        }

}

如何解决这个问题?

欧元:

已经找出原因: p:panelGrid 以某种方式调整了日历内容的大小。也许解决方法是将日历放入其他容器中。将尝试并报告。

欧元 2:

将日历放入面板并不能解决问题。

4

2 回答 2

0

我在这里不明白您要创建什么设计 bur 我使用了此代码...

<p:tab title="Logs">

<p:accordionPanel id="accordionLogs" styleClass="logsAccordion">
<p:tab title="Log1"></p:tab>
<p:tab title="Log2"></p:tab>
</p:accordionPanel>
<p:calendar   mode="inline" styleClass="logsCalendar">
<p:ajax event="dateSelect"    />
</p:calendar>

</p:tab>

对我来说很好用

于 2013-02-22T12:08:04.803 回答
0

现在的解决方法是使用 html gridPanels:

<h:panelGrid columns="2" cellpadding="2" styleClass="logsGrid">
<p:calendar value="#{dateBean.date}" mode="inline" styleClass="logsCalendar">
<p:ajax event="dateSelect" listener="#{dateBean.handleDateSelect}" update=":growlMain" />
</p:calendar>
</h:panelGrid>
于 2013-02-25T08:59:54.827 回答