1

このように、p:calender(primefaces 3.3)を使用して日付機能の複数選択を実現しようとしています。

<p:calendar  id="cal" showButtonPanel="true"  mode="inline"
    value="#{bean.dates}" selection="multiple"/> 

バッキングBeanでは、次のように日付を配列として取得しました。

private Date[] dates;
public Date[] getDates() {
    return dates;
}

public void setDates(Date[] dates) {
    this.dates = dates;

}

しかし、それでも複数の日付を選択することはできませんでした。

このブログhttp://blog.primefaces.org/?p=391によると、機能します。

同じ方法で実装しようとしましたが、機能しませんでした。なんでそうなの?

4

2 に答える 2

2

あなたが読んだブログ投稿は非常に時代遅れです。当時、primefaces のカレンダーは YUI に依存していましたが、現在は Jquery UI の日付ピッカー (複数選択をサポートしていません) に基づいています。

したがって、primefaces current calendar で複数の日付を選択することはできませんが、Google で少し検索して、他の jquery ベースの代替手段を見つけることができます。

たとえば、jQuery UI Datepicker - 複数の日付選択

于 2012-07-08T07:35:28.530 に答える
1

デフォルトの機能はありませんが、ここに 2 つのインライン カレンダーを使用したソリューションがあります

<p:commandButton id="test" type="button"/>                                  
<p:overlayPanel for="test">
    <p:outputLabel styleClass="ui-grid ui-grid-responsive">
        <div class="ui-grid-row">
            <div class="ui-grid-col-6">
                <p:calendar id="start" value="#{myModel.start}" navigator="true" pattern="dd/MM/yyyy" mode="inline">
                    <p:ajax event="dateSelect" update="end"/>
                </p:calendar>       
            </div>
            <div class="ui-grid-col-6">
                <p:calendar id="end" value="#{myModel.end}" navigator="true" pattern="dd/MM/yyyy" mode="inline" mindate="#{myModel.start}"/>        
            </div>
        </div>
    </p:outputLabel>                                    
</p:overlayPanel>
于 2016-08-10T22:33:08.160 に答える