0

我正在尝试制作一个pickList。我希望通过单击单个项目来选择多个项目。我怎样才能做到这一点?

4

2 回答 2

0

在你看来,我是从 primefaces 网站上拿的,我想你会有这样的东西

    <h:form>

     <p:selectBooleanCheckbox value="#{selectBooleanView.value1}" label="parent"> 
        <p:ajax update="cb1 cb2" listener="#{selectBooleanView.yourLogic}" />
      </p:selectBooleanCheckbox>
         <p:selectBooleanCheckbox id="cb1" value="#{selectBooleanView.value2}" label="son1"/> 
         <p:selectBooleanCheckbox id="cb2" value="#{selectBooleanView.value3}" label="son2"/>



    </h:form>

在前面的代码中查看 ajax 标签调用托管 bean 并根据 ID 更新一些项目

您的托管 bean SelectBooleanView.java

import javax.faces.application.FacesMessage;
import javax.faces.bean.ManagedBean;
import javax.faces.context.FacesContext;

@ManagedBean
public class SelectBooleanView {

private boolean value1;  
private boolean value2;
private boolean value3;

public boolean isValue1() {
    return value1;
}

public void setValue1(boolean value1) {
    this.value1 = value1;
}

public boolean isValue2() {
    return value2;
}

public void setValue2(boolean value2) {
    this.value2 = value2;
}
public boolean isValue3() {
    return value3;
}

public void setValue3(boolean value3) {
    this.value3 = value3;
}

public void yourLogic() {
   this.value3= value1;
   this.value2=value1;
}
}
于 2014-11-26T11:30:23.267 回答
0

您可以使用服务器端 ajax 传输事件或客户端“onTransfer”回调属性。

<p:ajax event="transfer" listener="#{foo.addOtherItemsToTranferList}" />

-或者-

<p:pickList ... onTransfer="foo.bar()">

于 2014-11-26T17:36:27.910 回答