连接日期对象onclick h:commandButton

时间:2013-06-21 14:50:17

标签: jsf primefaces

我正在使用Primefaces 3.1.1。而且对于JSf来说是非常新的。 我的表单上有两个日历输入字段:

<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>

我有第三个字段连接并在点击h:commandButton时显示上述两个值。

例如:

按钮:

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

我不确定如何实现这一目标。是否有可能使用一些ajax事件? 任何指针都将非常感激。

-BR

1 个答案:

答案 0 :(得分: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 attribtue对此至少是不可取的,因为它在这个特定情况下仅提供了在提交表单之前执行某些JavaScript函数的钩子。你对这个钩子不感兴趣。