Desabilitar campos JSF

19 respostas
E

Olá, tenho vários campos em uma tela de cadastro e uso o atributo disable passando como parametro um metodo boolean para habilitar e desabilitar os campos, gostaria de saber se nao tem como eu desabilitar todos os campos da tela de cadastro de uma soh vez, ao inves de por disable="#{bean.boolean}" em todos os campos.

Agradeço qlq ajuda de vocês;

19 Respostas

J

Você pode colocar todos estes campos dentro de um panelgrid (por exemplo) e “dar” o disable nele.

E

panelgrid nao tem o atributo disable pelo que vi, nem o panel

H

panelgrid nao tem o atributo disable pelo que vi, nem o panelE um div?

E

também não, ;s só se com outro nome que eu não conheço mas disable não tem, o pior eh que tenho telas de cadastro aqui com mais de 30 campos, vai dar uma mão de obra grande por em todos e o código ficaria ‘sujo’ demais;

H

Elvis Fabiane:
também não, ;s só se com outro nome que eu não conheço mas disable não tem, o pior eh que tenho telas de cadastro aqui com mais de 30 campos, vai dar uma mão de obra grande por em todos e o código ficaria ‘sujo’ demais;
procurei no google por: disable div

E olha o primeiro resultado no google:

E

poise cara, o problema é que eu não sei 1% trabalhar com javascript, mas tudo bem, vou dar uma estudada. Valeu

L

Você viu se tem o atributo rendered no panelGrid ?

E

mas o rendered não oculta conforme o valor do boolean ? Não gostaria de ocultar, somente desabilitar

L

ah tá.
foi mal.
então só com readonly mesmo.

B

Melhor opção pelo jeito é o javascript mesmo como sugeriu o Hebert Coelho…mas da uma caçada no google…as vezes acha outras opções. eu particularmente faria com javascript tbm.

[]'s

E

lele_vader:
ah tá.
foi mal.
então só com readonly mesmo.

Em qual componente eu encontro o readonly amigo ?

E

bastides:
Melhor opção pelo jeito é o javascript mesmo como sugeriu o Hebert Coelho…mas da uma caçada no google…as vezes acha outras opções. eu particularmente faria com javascript tbm.

[]'s

poisé, já passou e muito da hora de eu aprender usar javascript

L

Tem que ver na documentação dos componentes.

Talvez o panelGrid tenha.

B

Javascript é simples, muita coisa você acha pronto na internet, mas o bom é entender o que esta sendo feito senão você se perde mesmo.

Boa sorte ai…qualquer duvida da uma procurada no GUJ no Google, nao achando solução vai postando aqui…

[]'s

E

blz cara vou dar uma estudada qlq coisa volto, agradecido !!!

M

Tente usar o <h:panelGroup rendered=“false”> em torno dos campos que vc quer desabilitar… ou entao use um evento p:ajax para desabilita-los

H

MarcioProgramador:
Tente usar o <h:panelGroup rendered=“false”> em torno dos campos que vc quer desabilitar… ou entao use um evento p:ajax para desabilita-los
Você já é o segundo que sugere o rendered.

Esse cara é para esconder e não desabilitar.

M

@Hebert Coelho, putz é mesmo shauhsauhusa… pior que eu ainda comentei falando em desabilitar :slight_smile: . Sorry buddies :slight_smile:

J

Cara se só pode ser desabilitar teria que fazer o disable testando se o valor do seu bean é false ou true em todos os seus componentes.
Pode fazer um ou, se 1 ou outro valor do bean for false desabilita.

Talvez isso lhe atenda.

Criado 18 de fevereiro de 2013
Ultima resposta 19 de fev. de 2013
Respostas 19
Participantes 6