0

私は Primefaces 3.1.1 を使用しています。一般的にJSfにとって非常に新しいものです。フォームに次の 2 つのカレンダー入力フィールドがあります。

<p:calendar widgetVar="widgetFromDate" id="ID1" value="#{Bean.selected.From}" pattern="dd.MM.yyyy" mode="popup" showOn="button"> </p:calendar>

<p:calendar widgetVar="widgetFromTime" id="ID2" value="#{Bean.selected.Till}" pattern="HH:mm" timeOnly="true" mode="popup" showOn="button"> </p:calendar>

をクリックすると、上記の 2 つの値を連結して表示する 3 番目のフィールドがありますh:commandButton

例えば:

ボタン:

<h:commandButton value="Speichern" onclick="????"></h:commandButton>

どうやってそれを達成するのか、私にはよくわかりません。いくつかの ajax イベントを使用する可能性はありますか? 任意のポインタをいただければ幸いです。

-BR

4

1 に答える 1

0

基本的にはそうです:

<p:calendar ... value="#{bean.date1}" />
<p:calendar ... value="#{bean.date2}" />
<p:commandButton value="submit" action="#{bean.submit}" update="result" />
<h:outputText id="result" value="#{bean.date3}" />

public void submit() {
    date3 = mergeSomehow(date1, date2);
}

または、標準の JSF コマンド ボタンの使用を主張する場合、これは同じ効果があります。

<h:commandButton value="submit" action="#{bean.submit}">
    <f:ajax execute="@form" render="result" />
</h:commandButton>

マージの実装の詳細はあなた次第であり、JSF/PrimeFaces とはまったく関係ありません。行き詰まった場合は、基本的な

このonclick属性は、この特定のケースでは、フォームが送信される前に何らかの JavaScript 関数を実行するためのフックを提供するだけなので、少なくともこれには適していません。あなたはこのフックに興味がありません。

于 2013-06-21T14:59:51.337 に答える