Você está aqui:
JSF - Java Server Faces :::
JSF HTML Tags ::: |
||
Como responder ao evento valueChangeListener de um controle <h:selectOneMenu> para detectar mudança de seleçãoQuantidade de visualizações: 9520 vezes |
||
|
O evento valueChangeListener de um controle <h:selectOneMenu> é disparado quando o usuário muda o valor selecionado no controle. Quando isso acontece, o evento é disparado e pode ser interceptado a partir de um bean gerenciado JSF. O método que deverá tratar o evento no bean têm acesso a um objeto da classe ValueChangeEvent, o que nos permite obter o UIComponent que gerou o evento assim como os valores exibidos antes e depois da seleção. Vamos ver um exemplo? Observe o código para uma página JSP ou Facelets que contém um controle <h:selectOneMenu> e um botão <h:commandButton>: Código para index.xhtml:
Começamos atribuindo o valor "#{filme.genero}" ao atributo value do controle <h:selectOneMenu>. No bean Filme a variável genero é do tipo String. Em seguida nós informamos que, no evento valueChangeListener do controle <h:selectOneMenu>, o método tratarMudancaGenero() do bean Filme deverá ser chamado. Veja agora o código para este bean: Código para Filme.java:
Note que no método tratarMudancaGenero() do bean Filme nós exibimos o valor antigo e o novo valor do controle <h:selectOneMenu>. É importante observar que o evento valueChangeListener, por si só, não funciona se o formulário não for enviado após a seleção. Por isso, incluímos uma chamada à submit() no evento onchange. Veja: onchange="submit()" Por fim, note que o envio do formulário feito pela mudança de seleção <h:selectOneMenu> é completamente diferente daquele feito pelo botão <h:commandButton>. Para que você veja a diferença, incluí também uma chamada ao método gravar() do bean feita quando o formulário é enviado clicando-se no botão. |
||
|
|
||
Veja mais Dicas e truques de JSF - Java Server Faces |
Dicas e truques de outras linguagens |
|
Java - Java Swing Avançado - Como exibir imagens nas células de uma JTable em suas aplicações Java Swing |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
|
1º lugar: Java |





