0

您好,在我在项目中遇到困难后,我在这里寻求您的帮助。欢迎您对 vue 的不同观点。我正在使用 primefaces Schedule 来执行给定的任务,但我不知道如何将参数传递给我的支持 bean。当像 SelectEvent 或 dateSelect 这样的计划事件触发时,我想在支持 bean 中使用此参数。例如,如果我有一个参数personeID,我会将此参数传递给 bean,以便当 actionListener 激活时,此设置可以在 bean 中初始化,以便我可以使用。我的代码

<p:schedule id="schedule" value="#{inscrireAgendaBean.eventModel}" widgetVar="myschedule"  process="@form" axisFormat="HH:mm"  columnFormat="dddd D/MM" firstHour="08" locale="fr" timeZone="GMT+1"  timeFormat="HH:mm">

  <p:ajax event="dateSelect" listener="#{inscrireAgendaBean.onDateSelect}" update="eventDetails" oncomplete="PF('eventDialog').show();" />

  <p:ajax event="eventSelect" listener="#{inscrireAgendaBean.onEventSelect}" update="eventDetails" oncomplete="PF('eventDialog').show();" />

 </p:schedule>

我只是想知道当 eventSelect 或 dateSelect 触发时是否有可能向我的 bean 添加参数 谢谢!

4

1 回答 1

0

我从您的问题中了解到,您想在选择事件时触发侦听器,因此您必须添加 a p:ajaxwith a eventSelectevent :

<p:schedule id="scheduleLocale"  value="#{managedBean.schedule}" draggable="false" resizable="false" axisFormat="HH:mm"  columnFormat="dddd D/MM" firstHour="08" locale="fr" timeZone="GMT+1"  timeFormat="HH:mm" >
    <p:ajax event="eventSelect" listener="#{managedBean.onEventSelect}" update="eventDetails" oncomplete="PF('eventDialog').show();" />
</p:schedule>

在你 managedBean 上,onEventSelect方法如下:

public void onEventSelect(SelectEvent selectEvent) {
    event = (ScheduleEvent) selectEvent.getObject();
}

所以getObject()将允许您检索诸如personeID 之类的信息,并且取决于您在第一次创建事件时是否实际放置了personelIDevent = new DefaultScheduleEvent()

要通过选择时间表上的日期来添加事件,请使用p:ajax事件dateSelect

<p:ajax event="dateSelect" listener="#{managedBean.onDateSelect}" update="eventDetails" oncomplete="PF('eventDialog').show();" />

这将显示一个对话框,您可以将要添加的任何信息添加到事件中,用户将输入它,因此无需传递任何参数。

于 2016-09-16T17:13:14.993 回答