如何正确使用<p:calendar>?</p:calendar>

时间:2013-06-01 19:46:23

标签: jsf jsf-2 primefaces calendar

我正在尝试使用search方法,因为我使用了两个日期checkincheckout。 我几天前开始使用primefaces

所以在search.xthml我有:

<h:form id="search_form" styleClass="searchform">
  ..
      <p:calendar id="checkin" beforeShowDay="false" pattern="dd/MM/yyyy" readonly="true" readonlyInput="true" effect="drop" showButtonPanel="true" navigator="true" locale="pt" mindate="#{systemC.today}" value="#{systemC.checkin}"> 
        <p:watermark for="checkin" value="Check-in"  />  
      </p:calendar>

      <p:calendar id="checkout" beforeShowDay="false" pattern="dd/MM/yyyy" readonly="true" readonlyInput="true" effect="drop" showButtonPanel="true" navigator="true" locale="pt" mindate="#{systemC.today}" value="#{systemC.checkout}"> 
        <p:watermark for="checkout" value="Check-out"  />  
      </p:calendar>
  ..
</h:form>

在我的豆子上,SystemControl我有:

@ManagedBean(name="systemC")
@SessionScoped
public class SystemControl  implements Serializable{
    private static final long serialVersionUID = 8454359216475311220L;

    private Message message;

    private String search;
    private Date checkin;
    private Date checkout;
    private Integer guests;

    private Date today;

    public String doSearch(){
        System.out.println(search + " " + checkin + " " + checkout + " " +guests);
        return null;
    }
    ..

问题在于,每当我调用方法doSearch时,checkincheckout都是null。 我已经看过primefaces展示,但仍然看起来我在这里做的事情。

我在这里缺少什么?任何的想法 ?有什么建议吗?

1 个答案:

答案 0 :(得分:2)

我认为问题在于您设置了readonly=true,这会阻止checkin更改checkoutp:calendar。 primefaces文档说明了关于readonly attriubute的以下内容:

指示此组件将阻止用户更改的标志。