java - JSF 如何获取之前选择的 MultiselectListbox 值?

标签 java jsf primefaces

我有一个multiselectListbox并想要先前选择的值。 例如: https://www.primefaces.org/showcase/ui/input/multiSelectListbox.xhtml

我想要从<Group 1>中选择的项目

JSF 中有设置变量的选项吗?或者也许使用 JavaScript?

最佳答案

我不知道JSF中是否有一个选项,但由于选择是JSF,只不过是调用Backingbean中该特定字段的setter方法

在下面的代码片段中

<p:multiSelectListbox value="#{multiSelectView.selection}" effect="slide" header="Categories" showHeaders="true">
    <f:selectItems value="#{multiSelectView.categories}" />
</p:multiSelectListbox>

这里

value=#{multiSelectView.selection} 将调用 multiSelectView bean 中的选择方法。 因此,修改setter方法以在设置当前值之前将值复制到另一个变量可以帮助在将值设置为新变量之前将值复制到另一个变量

 public class MultiSelectView {

private List<SelectItem> categories;    
private String selection;
private String previousSelection;

...
public void setSelection(String newSelection) {
    this.previousSelection=this.selection;
    this.selection = newSelection;
}

现在您拥有当前选择和先前选择。希望对您有帮助

关于java - JSF 如何获取之前选择的 MultiselectListbox 值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45208663/

相关文章:

java - 如何使用 retrofit2 接收 Json 数组 ("result")

css - 如何设置 p :column in a p:dataTable in PrimeFaces 3. 0 的宽度?

java - h :commandButton action is just called one time on two calls

java - 将 Hashmap 与 SelectManyMenu 和 JSF 结合使用

java - 如何声明不同数据类型的数组

java ImageObserver 停止更新动画 gif

jsf - 是否跨 session 范围的 JSF 支持 bean 观察到 CDI 事件

jsf - JSF 中的多个 Action 监听器

html - 无法删除 Primefaces SelectOneMenu 上的底部 "margin"

java.sql.SQLException : The url cannot be null