Hola a todos!
Tengo el siguiente problema:
En mi lucha por conseguir distinguir si el usuario tiene habilitado javascript en su navegador o no, me he creado una variable en el flow que valga 0 si el javascript está deshabilitado o 1 si está habilitado. Por defecto la variable está inicializada a 0.
Tengo mi variable en el flow "jsActivado"
Un botón oculto:
<h:commandButton id="btn-jsActivado" value="#{jsActivado.value}" action="incrementarJsActivado"/>
Un trozo de código javascript:
<script>
var btnJsActivado = document.getElementById('f1:btn-jsActivado');
if (btnJsActivado.value == 0) {
btnJsActivado.click();
}
</script>
Mi planteamiento es que si el usuario tiene habilitado javascript se ejecutará el código entre las etiquetas "script" y al hacer el click del botón desde el código javascript, que se ejecute el action que le tengo establecido. El problema es que el formulario entra en un bucle infinito porque se hace el click del botón pero no se ejecuta el action y no se cambia el valor de la variable. ¿Sabe alguien cómo hacer que se ejecute la acción del botón al "simular que se pulsa" mediante javascript? He visto que otros lo hacen poniendo el .click() y dicen que se ejecuta el action, pero a mí no.
¿Hay alguna otra forma de cambiar el valor de una variable del flow mediante javascript?
Gracias adelantadas!