Binding InputMask Primefaces

3 respostas
Y

Bom dia pessoal.
Estou tentando colocar um binding no meu MB que tem a seguinte função.
Tenho um objeto que tem dois códigos, um do tipo String e outro Long. Tenho um método no meu MB que da um biding em uma inputMask. Se o código A for Null ele seta uma mask"999999/99" se não for ele seta Null na mask.

Tem como fazer isso?

3 Respostas

Mike

Bom dia @Yehhdeivid

Nem precisa de bind,

<p:inputMask mask="#{bean.mask}"/>

public class Bean {
    private String mask;
    private CodigoA codigoA;

    public String getMask() {
        if(codigoA == null) {
            mask = "999999/99";
            return mask;
        }
        return "";
    }
}

Ou simplesmente ter dois inputMask, se a condição for atendida, renderiza um inputMask, senão renderiza o outro

Y

Haaaaa entendi.
Não tinha pensado em usar EL dentro do atributo mask. kkk Boa.
Obrigado.

Mike

:+1:

Você pode fazer da segunda forma também, o JSF é muito poderoso para manipular o DOM, você pode usar dois inputMask e ai apenas um vai ser renderizado e o outro nem vai estar no DOM, de maneira muito simples com o rendered.

Outra forma é usar operador ternário no mask, mas ai a lógica fica na view e eu particularmente não gosto, mas é possível.

Criado 3 de setembro de 2018
Ultima resposta 3 de set. de 2018
Respostas 3
Participantes 2