Mensagem não aparece ao lado do campo - primeface

10 respostas
java
D

Não consigo mostrar a mensagem ao lado do campo.

<ui:define name="corpo">

	<h:form id="frm">
		<p:focus context="frm" />
		
    	<h1>Cadastro de Serviço</h1>
    	
    	<p:messages id="messages" showDetail="true" autoUpdate="true" closable="true" />
    	
    	<p:toolbar style="margin-top: 20px">
    		<p:toolbarGroup>
    			<p:button value="Novo" outcome="/servicos/CadastroServico" />
    			<p:commandButton value="Salvar" id="botaoSalvar" actionListener="#{cadastroServicoBean.salvar}" />
    		</p:toolbarGroup>
    		<p:toolbarGroup align="right">
    			<p:button value="Pesquisa" outcome="/servicos/PesquisaServico" />
    			<p:separator />
    			<p:button value="Limpar Formulário" />
    		</p:toolbarGroup>
    	</p:toolbar>
    	
    	<h:panelGrid columns="2" id="painel" styleClass="form-cadastro-serv" >
  			<p:outputLabel value="cliente" style="float:right; margin-top:2px;" id="cliente" />
			<p:inputText size="40" styleClass="campo" id="cli"  for="cliente" required="true" label="Cliente é obrigatório">
			<p:message for="cli"/>
			</p:inputText>
			<p:outputLabel value="telefone fixo" style="float:right;" lang="telefone fixo"   />
			<p:inputMask id="tel" mask="([telefone removido]" size="16" styleClass="campo" required="true" label="telefone" />

10 Respostas

R

Tenta tirar de dentro do inputText …

D

tirei só que apresenta de forma global, queria que fica ao lado do componente.

R

Como assim?

D

Está em cima do meu form, e esta dando certo, só que queria retirar a mensagem que fica do meu form e colocar ao lado do componente.

<p:messages id="messages"  autoUpdate="true" closable="true" />
R

No seu commandButton coloca p/ dar update só no panelGrid (painel) e validateClient=“true” . Tenta ai

EDIT: Particularmente, eu prefiro dar o update no message na mão mesmo(designar). Mas cada um faz conforme sua necessidade.

D

acabei mudando de ideia reference a posição das mensagem. Como faço para que quando mostrar a mensagem, marcar o componente com label para o usuário saber que é aquele determinado campo?

R

Usa a opção com o tooltip (acho até elegante)

<p:outputLabel for="tt" value="Tooltip:" />
        <p:inputText id="tt" required="true" />
        <p:message for="tt" display="tooltip" />

refs: http://www.primefaces.org/showcase/ui/message/messages.xhtml

D

não fez nada.

<h:panelGrid columns="2" id="painel" styleClass="form-cadastro-serv"  >
  			<p:outputLabel value="cliente" style="float:right; margin-top:2px;" for="cliente_campo"  />
			<p:inputText size="40" styleClass="campo" id="cliente_campo"  required="true" label="cliente" >
				<f:validateLength minimum="3" />
				<p:message display="tooltip" for="cliente_campo"/>
			</p:inputText>
R

Mas o componente de mensagem está novamente dentro do input. Tem que ficar fora.

D

Consegui obrigado!

Criado 6 de janeiro de 2017
Ultima resposta 15 de jan. de 2017
Respostas 10
Participantes 2