Buscar
Social
Ofertas laborales ES

Foro sobre Java EE > hacer foco sobre elemento jsf con jquery

hola a todos, estoy haciendo una aplicación jsf donde tengo un dataGrid con una serie de panelGrid, estos panelGrid contienen un commandLink, lo que yo quiero lograr mediante jquery es que se haga foco automáticamente en todos los comandLink, en cuanto se cargue la pagina, uno a la vez haciendo foco en un comandLink distinto cada dos segundos para poder seleccionarlo apretando enter, (es una aplicación para personas con discapacidades motrices que me propusieron en la facultad, por lo tanto no se puede pretender que usen el mouse).

nunca hice nada con jquey así que estoy bastante desorientado, si no me equivoco lo que tengo que hacer es obtener la colección de commandLink e ir enfocándolos uno a uno cada dos segundos, y quisiera que me ayuden en eso.

voy a hacer una aclaración. el método "tematicaBacking.getAllActivas()" trae de una base de datos todas las 'temáticas' que se encuentren activas. Estas temáticas tienen un nombre y una imagen, eso es lo que muestro dentro de cada commandLink. (creo que no hace falta explicar a que me refiero cuando digo temática, solo digamos que una temática es un objeto java que tiene un nombre y una imagen)

otra aclaración, la función jquery que ya en nombrado "enfocar()" la tengo que escribir en un archivo externo y para llamarla uso el evento onload.

Les dejo mi pagina jsf:

<h:body onload="enfocar();" >

<h:form class="formSelect" id="formSel">
<p:dataGrid columns="5" class="grid" id="dataTable" value="#{tematicaBacking.getAllActivas()}" var="item">
<h:panelGrid id="grid" columns="1" class="panelGridIndex" >
<h:commandLink id="enlace" class="botonSeleccionar" >
<h:form id="formLink" class="formBotonIndex">
<h:outputText id="nombre" value="#{item.nombre}" />

<h:graphicImage id="imagen" class="imagenInicio" value="#{item.pathImagen}" width="150" />
</h:form>
</h:commandLink>
</h:panelGrid>
</p:dataGrid>
</h:form>

</h:body>

tengo entendido que puede hacerlo con la funcion focus(), pero el problema mas grande que tengo es que no puede acceder a los commandLink, he intentado hacerlo de la misma manera que accedo a un elemento <p></p> pero al comprobar la longitud me da cero cuando deberian ser 10.

enero 21, 2015 | Registered Commenterhhugo

leer todo ya aburre!...se mas breve para la próxima

agosto 18, 2015 | Unregistered Commenteranonimo

Mira en la consola qué tipo de error ha ocurrido y coloca la función JS para más información.

Es raro que no puedas seleccionar los commandLinks solo con:


// jQuery
$('#formSell\\:nombre')
// VanillaJS
document.getElementById('formSell:nombre');

agosto 18, 2015 | Unregistered CommenterMitsu Gami