Jsf Primefaces Picklist仅在添加时触发传输事件

Jsf Primefaces Picklist仅在添加时触发传输事件,jsf,primefaces,jsf-2,Jsf,Primefaces,Jsf 2,我的一个页面中有一个选择列表组件Primefaces 6.x。拾取列表具有一个传输事件侦听器,如showcase中所示: <p:ajax event="transfer" listener="#{pickListView.onTransfer}" update="msg" /> 这非常有效,每次我在目标列表中添加或删除项目时都会调用我的方法 我的问题是,是否只有在目标列表中添加项时才可能触发事件处理程序,或者是否有一种方法可以在我的方法中捕获从目标删除操作,并忽略我在bean方法中

我的一个页面中有一个选择列表组件Primefaces 6.x。拾取列表具有一个传输事件侦听器,如showcase中所示:

<p:ajax event="transfer" listener="#{pickListView.onTransfer}" update="msg" />
这非常有效,每次我在目标列表中添加或删除项目时都会调用我的方法


我的问题是,是否只有在目标列表中添加项时才可能触发事件处理程序,或者是否有一种方法可以在我的方法中捕获从目标删除操作,并忽略我在bean方法中执行的所有验证

开源和拥有良好的IDE来完成代码有一个优势。两者都可以显示具有isAdd和isRemove方法。这些可以很容易地用于区分eventHandler中实际使用的是哪一个

public void onTransfer(TransferEvent event) {

   if (event.isAdd()) {
      // Do actual work
   }

}

开源和拥有良好的IDE来完成代码有一个优势。两者都可以显示具有isAdd和isRemove方法。这些可以很容易地用于区分eventHandler中实际使用的是哪一个

public void onTransfer(TransferEvent event) {

   if (event.isAdd()) {
      // Do actual work
   }

}

正如我所看到的,按钮事件是由css定义的。没有可覆盖的js代码。您可以在服务器端进行过滤。也许您可以重新定义链接到按钮的类类型。ui选取列表按钮添加,.ui选取列表按钮添加全部,…您在服务器上进行筛选是什么意思?有没有办法在服务器端识别它是添加还是删除操作?我只是挖掘生成的源代码和css。但正如我所看到的,showcase中有选择和取消选择事件类型。这对您来说不是一个好的解决方案?不,因为只有当您从列表中选择条目而不是将其分配给目标列表时,才会触发选择。传输事件处理程序的符号是:public void onTransferorg.primefaces.event.Transfervent evenet\。这个事件对象有两个方法isAdd和isRemove:我可以看到css定义的按钮事件。没有可覆盖的js代码。您可以在服务器端进行过滤。也许您可以重新定义链接到按钮的类类型。ui选取列表按钮添加,.ui选取列表按钮添加全部,…您在服务器上进行筛选是什么意思?有没有办法在服务器端识别它是添加还是删除操作?我只是挖掘生成的源代码和css。但正如我所看到的,showcase中有选择和取消选择事件类型。这对您来说不是一个好的解决方案?不,因为只有当您从列表中选择条目而不是将其分配给目标列表时,才会触发选择。传输事件处理程序的符号是:public void onTransferorg.primefaces.event.Transfervent evenet\。这个事件对象有两个方法isAdd和isRemove:这正是我想要的。谢谢,这正是我想要的。非常感谢。