Как выбрать несколько элементов в pickList(Primefaces)?

Я пытаюсь сделать подборку. И я хочу, чтобы несколько элементов были выделены одним щелчком мыши. Как я могу этого достичь?

2 ответа

Вы можете использовать событие передачи ajax на стороне сервера или атрибут обратного вызова onTransfer на стороне клиента.

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

-ИЛИ ЖЕ-

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

Я беру это с сайта 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 вызывает управляемый бин и обновляет некоторые элементы на основе идентификатора.

Ваш управляемый компонент 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;
}
}
Другие вопросы по тегам