Olá pessoal.
Estou com um problema numa parte de minha aplicação utilizando JSF e Facelets:
eu tenho uma página de cadastro que contém o seguinte código:
<h:selectOneMenu id="numType">
<f:selectItems value="#{formType.formTypesAvailableSelectOne}" />
<a4j:support event="onchange" reRender="outputText_numInputType, numInputType" />
</h:selectOneMenu>
Este código possui uma ação baseada no evento onchange. Quando o select é alterado de opção, isto é, quando ele possuir o valor igual a 3, nesse caso, ele deverá ativar (mostrar) outro select, este abaixo:
<a4j:outputPanel ajaxRendered="true">
<h:selectOneMenu id="numInputType" [b]rendered="#{form_controller.form.numType == 3}"[/b]>
<f:selectItems value="#{formInputType.formInputTypesAvailableSelectOne}" />
<a4j:support event="onchange" reRender="numInputType" />
</h:selectOneMenu>
</a4j:outputPanel>
Ná minha página de alteração ele funciona sem problemas, pq nesse caso o objeto controlador do meu bean, form_controller (rendered="#{form_controller.form.numType == 3}") existe e assim a condição imposta no rendered funciona.
O problema é que na minha página de cadastro, o form_controller não é instanciado ainda. Então essa condição não vai funcionar. O que eu precisaria era de uma forma que via JSF, eu conseguisse pegar o value do campo select de id= “numType” e apartir dele fazer a condição do rendered.
Provavelmente deve ser possível fazer em javascript, mas eu gostaria de fazer isso em JSF, se for possível, claro.
Alguém saberia como fazer isso?
Obrigado.