Caros,
Tenho uma tela com um selectOneMenu, que após o usuário selecionar um valor, eu “populo” outro selectOneMenu a partir de um método no meu bean, depois quando o usuário escolher um valor desse segundo combo, eu populo um selectOneRadio, até aqui tudo bem, está funcionando direitinho, porém quando eu altero o valor do primeiro combo apenas o valor do segundo é alterado(é meio óbvio isso), mas eu gostaria que quando ocorresse isso o selectOneRadio que foi populado anteriormente voltasse a ficar sem valor.
Estou utilizando a classe “ValueChangeEvent”.
Os combos estão ± assim:
<!-- Primeiro combo -->
<h:selectOneMenu id="comboPai" onchange="this.form.submit();"
valueChangeListener="#{meuBean.populateComboFilho}"
value="#{meuBean.idPai}">
<f:selectItem itemLabel="Selecione um pai" itemValue="0" />
<f:selectItems value="#{meuBean.listaPais}"/>
</h:selectOneMenu>
<!-- Segundo combo -->
<h:selectOneMenu id="comboFilho" onchange="this.form.submit();"
valueChangeListener="#{meuBean.populateRadios}"
value="#{meuBean.idFilho}">
<f:selectItem itemLabel="Selecione um filho" itemValue="0" />
<f:selectItems value="#{meuBean.listaFilhos}"/>
</h:selectOneMenu>
<!-- Radio -->
<h:selectOneRadio id="radios" value="#{meuBean.idRadio}">
<f:selectItems value="#{meuBean.listaRadio}"/>
</h:selectOneRadio>
Tentei setar um valor nulo dentro do método do meu bean, mas não deu
certo, acredito que consigo resolver esse problema com ajuda do
javaScript, toda vez que o onChange do primeiro combo for acionado eu
chamo uma function em javaScript que limpa o selectOneRadio…?, sei
que é gambiarra, por isso gostaria da ajuda de vocês.
Valew galera, abraços!