Con JavaServer Faces tenemos el problema de que, en ocasiones, no sabemos cual es el identificador final de los componentes, una vez sean éstos mostrados al cliente, lo que nos impide usar funciones JavaScript para modificar las propiedades de estos componentes, o llamar a sus funciones JavaScript.
Para recuperar un componente JavaScript que representa al componente de Richfaces, podemos escribir:
#{rich:component(’[identificador único en la página XHTML o JSP]‘)}
Esto se transforma después en algo parecido a (dependiendo del navegador):
document.getElementById(’[identificador de JSF]‘).component
Por ejemplo. Para acceder al componente que representa un Modal Panel de Richfaces podemos hacer lo siguiente:
#{rich:component(’modalPanel’)}.show();
Se transformara en:
document.getElementById(’namespace:_viewRoot:form:modalPanel’).component.show()
Esta función por ejemplo, nos muestra el modal panel, si pusiéramos “hide()” al final, en vez de “show()”, el panel se cerraría.
0 comentarios