Tenho um selectOneRadio e gostaria de colocar uma descriçao ao passar o mouse encima de cada item
Estou usando JSF 2.0
<p:selectOneRadio value="#{gravaAbreChamados.prioridade}">
<f:selectItem itemLabel="Normal" itemValue="0" itemDescription="Novo"/>
<f:selectItem itemLabel="Alta" itemValue="1" />
<f:selectItem itemLabel="Urgente" itemValue="2" />
</p:selectOneRadio>
Alguem sabe se tem como?
Tentei o itemDescription mas nao funcionou, e o Alt e o Title nao existe para o selectItem
Você quer para cada item ?
Porque a selectOneRadio tem o atributo title que eu acho que coloca um tooltip para cada opção.
Isso quero para cada item
A opçao Title, nao funciona, ou eu que nao expressei ela certa.
adicione um id nos teus f:selectItem e por fim:
<p:tooltip for="IdQueDeveSerAtrelado" value="Essa e a tooltip daquele item" />
Opa
Entao, eu fiz isso e nao funcionou, já tinha testado dessa forma. Esse é o meu xhtml
<h:form id="tf">
<div align="left">
<p:panel id="pnl" header="#{validaTipoTela.tituloChamado}" closable="true" toggleSpeed="500" closeSpeed="2000" widgetVar="panel" footer="Help Desk - Coopercarga">
<h:panelGrid columns="2">
<h:outputLabel id="lcategoria" value="Categoria:"/>
<p:selectOneMenu id="sOMCategoria" value="#{gravaAbreChamados.idCategoria}" height="100" required="true">
<f:selectItem itemLabel="Selecionar uma Categoria" itemValue="0" />
<f:selectItems id="fsCategoria" value="#{abreChamados.listaCategorias()}"
var="item" itemLabel="#{item.descricao}"
itemValue="#{item.id}" />
</p:selectOneMenu>
<h:outputLabel id="lmoduloproduto" value="Módulo/Produto:"/>
<p:selectOneMenu id="sOMModuloProduto" value="#{gravaAbreChamados.idModuloProduto}" height="100" required="true">
<f:selectItem itemLabel="Selecionar um Módulo/Produto" itemValue="0" />
<f:selectItems id="fsModuloProduto" value="#{abreChamados.listaModuloProdutos(validaTipoTela.idCodigoTipoChamado)}"
var="item" itemLabel="#{item.descricao}"
itemValue="#{item.id}" />
</p:selectOneMenu>
<h:outputLabel value="Assunto:"/>
<p:inputText value="#{gravaAbreChamados.assunto}" size="83" maxlength="84" id="iassunto">
<p:ajax update="pnBase"
listener="#{gravaAbreChamados.verificaBaseConhecimento(gravaAbreChamados.assunto, validaTipoTela.idCodigoTipoChamado)}" />
</p:inputText>
<h:outputLabel value="Descrição"/>
<p:inputTextarea rows="7" cols="60" counter="counter" maxlength="200" value="#{gravaAbreChamados.problema}"
counterTemplate="{0} Caracteres Restantes." autoResize="false"/>
<h:outputLabel id="lstatus" value="Status:"/>
<p:inputText id="istatus" value="#{gravaAbreChamados.status}" disabled="true"/>
<h:outputLabel id="lprioridade" value="Prioridade:"/>
<p:selectOneRadio value="#{gravaAbreChamados.prioridade}" >
<f:selectItem itemLabel="Normal" itemValue="0" id="iNormal"/>
<f:selectItem itemLabel="Alta" itemValue="1" id="iAlta"/>
<f:selectItem itemLabel="Urgente" itemValue="2" id="iUrgente"/>
</p:selectOneRadio>
<p:tooltip for="iNormal" value="Essa e a tooltip daquele item" />
</h:panelGrid>
<p:commandButton value="Gravar" action="#{gravaAbreChamados.gravarChamado(telaLogin.idUsuario, validaTipoTela.idCodigoTipoChamado)}"
icon="ui-icon-disk"
update="pnl"
onclick="chamados"/>
<p:focus for="sOMCategoria"/>
</p:panel>
</div>
</h:form>
Coloquei logo depois do radio, mas nao funcionou
coloca logo depois do f:selectItem
Infelizmente não funciona, se eu adicionar um id no selectOneRadio e usar o tooltip, funciona, mas no item em si, nao funcionou
alguma outra dica?
Obrigado
se isso não funcionou, então, eu faria uma das 2 coisas:
1° - Tooltip com CSS em cada elemento (muito raro, mas seria uma alternativa)
2° - Transportaria para um componente html com uma estrutura de repetição, ou, se não for proveniente de um banco de dados, eu simplesmente criaria o radio em html, atrelaria o tooltip no componente, já que ele funciona atrelado a um id, e recuperaria no backingbean pelo nome do componente do radio. Com essa opção você escreve uma linha grande para fazer isso, mas funcionaria do mesmo jeito.
Ok, vou tentar a priori fazer somente no Radio mesmo, questao de tempo nao vou ter como desenvolver isso agora, assim faço para os 3 item e demonstro tudo de uma vez só!
Amigo, aproveitando a deixa e a tua paciencia…ahaha
Estou tentando fazer um selectOneMenu que tenha duas colunas, porém tentei pegar o exemplo do primefaces, mas sem sucesso, nao consegui criar
<p:selectOneMenu value="#{cadGrupoSuporte.fields.id_tabela_padrao}">
<f:selectItem itemLabel="Select One" itemValue="" />
<f:selectItems value="#{cadGrupoSuporte.listaTabelaPreco()}" var="player"
itemLabel="#{player.descricao}"
itemValue="#{player.id}"/>
<p:column>
<h:outputText value="#{player.valor}" />
</p:column>
</p:selectOneMenu>
esse meu codigo
esse meu bean
public ArrayList<ListaComboTabelaPreco> listaTabelaPreco() {
ArrayList<ListaComboTabelaPreco> listaItens = new ArrayList<ListaComboTabelaPreco>();
try {
rs = Conexao.Consulta("select id, descricao, valor from help_tabela_preco order by descricao");
} catch (SQLException ex) {
FacesContext.getCurrentInstance().addMessage(null, new FacesMessage(FacesMessage.SEVERITY_FATAL, "Erro ao Carregar grupo suporte", ex.getMessage()));
}
try {
while (rs.next()) {
int id = rs.getInt("id");
String nome = rs.getString("descricao");
Float valor = rs.getFloat("valor");
ListaComboTabelaPreco list = new ListaComboTabelaPreco(id, nome, valor);
listaItens.add(list);
}
} catch (SQLException ex) {
FacesContext.getCurrentInstance().addMessage(null, new FacesMessage(FacesMessage.SEVERITY_FATAL, "Erro ao Carregar grupo suporte - Next", ex.getMessage()));
}
return listaItens;
}
Preciso colar a descriçao e o valor em colunas separadas
Obrigado