Value do commandButton muito longo

16 respostas
R

Como faço para quebrar linha dentro de um <h:commandButton> ?
Tenho uma tela com vários commandButton’s, todos possuem ‘value’ com String grande
Que faz com que ultrapassem a largura da tela.
ex:
“Termo de Ajuste de Conduta”
para
“Termo de Ajuste
de Conduta”
Estou usando JSF, facelets,richfaces
css apenas para colorir o commandButton

16 Respostas

P

Veja se existe um atributo ‘escape’, e coloque com valor ‘false’. Em seguida adicione ‘
’ para quebras.

Apesar que o ideal é usar nomes curtos e hints para explicações ou textos maiores.

C

Sei que o tópico é velho…
Mas alguem tem alguma idéia de como quebrar
a linha nessa situação?

Y

Tu ta pegando o texto de um MB?
Faça exatamente como o pozzo falou.
Adicione a tag
nas Strings, e preencha o atributo escape como false;

C

Então… ja tentei
Mas o <h:commandButtom> não aceita o <br> e nem existe a propriedade scape

:T

Y

Huumm
Então dependendo de como está a sua aplicação é possivel utilizar algumas 'pog', por exemplo;

<button>#{teste.mensagemAntes}<br/>#{teste.mensagemDepois}</button>

<button><h:outputText value="#{teste.MensagemComQuebra}" escape="false"></button>

ou algo mais ou menos assim;

C

Então… no meu caso minha linha ta assim

&lt;h:commandButton  value="Solicitar Documento Complementar" /&gt;

como ficaria ? :frowning:

Y

Mas e as ações desse button?

Da uma olha nos atributos possiveis dessa tag

http://www.w3schools.com/tags/tag_button.asp

Ex;

<button onclick="alert('Me clicou')">Solicitar<br/>Documento<br/>Complementar</button>

Não é uma das maneiras mais elegantes, talvez uma ancora se comportasse melhor(qualquerHtml), mas funciona perfeitamente.

C

a action dele ja tá configurada…
coloquei aqui apenas o necessário ( no caso o “value” ) para ficar mais simples…

C

Então Ygor…
A solução utizando html simples funcionou perfeitamente…
mas preciso fazer isso com o <h:commandButton :cry:
Já inventei um milhão de coisas no value dele e até agora nada haha
Se alguem tiver alguma idéia>

Y

Tu pode postar a ação do botão aqui e dizer qual versão jsf vc esta utilizando?

C

A ultima versão…3.2 acho
Mas por você quer o action?

Y

carolino

Tava dando uma olhada em alguns caracteres especiais e encontrei este aqui ‘& # 1 0;’(Ecomercial,hash,10,pontoVirgula) e testei aqui e funcionou perfeitamente como uma quebra de linha, como se fosse um \n em java.
Da uma olhada ai e ve se funciona.
Qualquer coisa poste aí

ps: tire os espaço entre os caracteres, tive que coloca-los para aparecer no post

C

Então Ygor
Também tinha pensado nisso…
Fiquei animado, achei que ia dar certo
Mas oque ele fez foi simplesmente imprimir o

To fikando com raiva rsrsrs

&lt;h:commandButton  value="Solicitar Documento & lt;br /& gt; Complementar" /&gt;

ps: dei um espaço no caracter especial pra aparecer aki como ficou

Y

Rss…
Que estranho, aqui funcionou perfeitamente no comandButton, porém estou utilizando jsf 2.0
Tentar pegar esse value de um ManagedBean e dai tu coloca esse caracter dentro da string.
Tu está utilizando o richfaces né? ele não tem um rich:comandButton ou algo do tipo? tenta nesta tag, talvez funcione

C

Não foi a maneira mais elegante mas foi a unica que deu certo…
Segui uma sugestão sua Ygor e fiz um método na minha bean
e coloquei um “\n” para ele pular a linha:

public String getStringParaOBotao(){ return "Solicitar Documento\n Complementar"; }

e depois chamei esse método no value do meu commandButton:

&lt;h:commandButton  value="#{meuBean.stringParaOBotao}" /&gt;

E então ele finalmente quebrou a linha hehe

Obrgado pela força Ygor… abraço kara \o

Y

Que bom que deu certo cara!
Sucesso

Criado 12 de janeiro de 2009
Ultima resposta 17 de set. de 2010
Respostas 16
Participantes 4