Jaison
Agosto 24, 2009, 10:17am
#1
Bom dia a todos!
pessoal, alguém já teve que implementar h:selectOneRadio dentro de um rich:dataTable?
o problema no meu caso é o seguinte, necessito que para cada linha do rich:dataTable apareça um grupo de h:selectOneRadio, porém ele não cria o grupo… aparece os h:selectOneRadio mas não agrupados.
tem alguma “mágica” para fazer isso no richfaces?
Obrigado desde já!
Tchello
Agosto 24, 2009, 11:49am
#2
Tem um esquema sim.
Você precisa usar um codigo javascript pra de-selecionar os radiobuttons da DataTable.
Faça da seguinte forma:
Usa esse javascript:
function selectOne(form, button)
{
turnOffRadioForForm(form);
button.checked = true;
}
function turnOffRadioForForm(form)
{
for(i=0; i<form.elements.length; i++)
{
if(form.elements[i].type=='radio')
{
form.elements[i].checked = false;
}
}
}
Na sua dataTable coloque da seguinte maneira:
<h:column styleClass="fontTable">
<f:facet name="header" >
<h:outputText value="radio" />
</f:facet>
<h:panelGrid columns="2" >
<h:selectOneRadio onchange="selectOne(form, this);" >
<f:selectItem itemValue="null"/>
</h:selectOneRadio>
<h:outputText value="#{order.id}" id="idshowdatatablepesquisapedidogui" />
</h:panelGrid>
</h:column>
Isso simulará um radioGroup.
Recomendo que leia tbm sobre a tag do selectOneRadio “valueChangeListener”, pode lhe ser util.
Abraços!
smnj
Dezembro 22, 2012, 1:44am
#3