Chamar valor do radio sem precisar clicar na selecao[resolvido]

2 respostas
A

Pessoal,

Estou apanhando no JSF, no seguinte processo:

Tenho um jsf que me apresenta 3 opcoes de radio´s(carregadas de um bean)

Eu escolho uma e ele exibe um calculo, mas o que eu queria é que ele ja carregasse um radio padrao e chamasse automatico o bean(sem precisar eu clicar no radio para executar)

Isso é possivel dentro do JSF 1?

Trecho dos radio:

<t:selectOneRadio id="opcoesCidade" forceId="true" forceIdIndex="true" layout="spread" value="#{calculoBean.codCidades}" required="true">
       <t:selectItems var="item" value="#{controleBean.formasPagtoCidade}" 
          itemLabel="#{item.descricao}" itemValue="#{item.idCidade}"/>  
        <a4j:support event="onclick" reRender="listaValores"  ajaxSingle="true" immediate="true"
       actionListener="#{calculoBean.preencherItenValores}"></a4j:support>
          </t:selectOneRadio> 
		  ..
		    <t:div id="blocoValores" >                                        
                           verbatim><h4>Valores</h4></f:verbatim>
                 <h:message for="listaValores" ></h:message>
             <a4j:status id="statusValores">
              <f:facet name="start">
        <h:panelGroup>
        <h:outputText value=" Calculo..."></h:outputText>
     </h:panelGroup>
      </f:facet>
    </a4j:status>                                        
        <h:selectOneRadio id="listaValores"  layout="pageDirection" value="#{calculoBean.nroValores}" required="true">
     <f:selectItems  value="#{calculoBean.itensValores}" />
           </h:selectOneRadio>
                                        
          </t:div>
..

2 Respostas

diego_ms136

Cara não tenho experiência alguma em JSF, mas creio que você poderia resolver o problema utilizando javascript, uma vez
que seus combos tenham nome em uma sequência lógica basta criar uma estrutura de repetição e utilizar o método do javascript de getDocumentById(Nome do Combo).
algo mais ou menos assim:

function returnValue(var comboBox){
return getDocumentById(comboBox).value;
}

for(var i = 0 ; i <= quantidadeCombos;i++){
alert("Valor do Combo["+i+"] = "+returnValue("NomeComum"+i));
}
A
diego_ms136:
Cara não tenho experiência alguma em JSF, mas creio que você poderia resolver o problema utilizando javascript, uma vez que seus combos tenham nome em uma sequência lógica basta criar uma estrutura de repetição e utilizar o método do javascript de getDocumentById(Nome do Combo). algo mais ou menos assim:
function returnValue(var comboBox){
return getDocumentById(comboBox).value;
}

for(var i = 0 ; i <= quantidadeCombos;i++){
alert("Valor do Combo["+i+"] = "+returnValue("NomeComum"+i));
}

Usei isso mesmo (javascript)

Fiz algumas alterações e ficou ok

Valeu

Criado 6 de fevereiro de 2012
Ultima resposta 8 de fev. de 2012
Respostas 2
Participantes 2