Estou usando h:selectOneRadio e mostrando um h:inputText ou h:selectOneMenus, isto de acordo com a opção escolhida. Para renderizar estou usando f:ajax no evento “click”. Tudo funciona normal, ou seja, vou escolhendo as opções do h:selectOneRadio e ele vai mostrando os campos de entrada devidos e escondendo os demais. O problema é que a opção que eu escolho fica sem a marca de seleção, ou seja, é como ela estivesse selecionada mas não fica a marca, mesmo disparado o comportamento correto. Vou colocar o código só para esclarecer melhor.
Obs: Para testar, mudei para o event=“change” e a marca aparece normalmente. Sendo que preciso que a marca apareça no click mesmo.
Alguém já passou por isso?
[code]<h:selectOneRadio id="opcaobusca" value="#{equipamentoBean.buscaSelecionada}" >
<f:selectItem itemLabel="Patrimônio" itemValue="1" />
<f:selectItem itemLabel="Equipamentos de um Setor" itemValue="2" />
<f:selectItem itemLabel="Equipamentos de uma Categoria" itemValue="3" />
<f:ajax event="click" render="opcoes" />
</h:selectOneRadio>
<h:panelGrid id="opcoes">
<h:panelGrid id="pnpatrimonio" rendered="#{equipamentoBean.buscaSelecionada == 1}">
<h:inputText styleClass="caixapequena" id="patrimonio" value="#{equipamentoBean.equipamento.patrimonio}" maxlength="20" />
</h:panelGrid>
<h:panelGrid id="pnsetor" rendered="#{equipamentoBean.buscaSelecionada == 2}">
<h:selectOneMenu required="true" styleClass="caixaopcao" id="selecaoSetor" value="#{equipamentoBean.codSetorEscolhido}">
<f:selectItems value="#{setorBean.listaSetores}" />
</h:selectOneMenu>
</h:panelGrid>
<h:panelGrid id="pncategoria" rendered="#{equipamentoBean.buscaSelecionada == 3}">
<h:selectOneMenu required="true" styleClass="caixaopcao" id="selecaoCategoria" value="#{equipamentoBean.codCategoriaEscolhida}">
<f:selectItems value="#{categoriaBean.listaCategorias}" />
</h:selectOneMenu>
</h:panelGrid>
</h:panelGrid>[/code]