Forums de discussion

Cambiar pestañas programaticamente e impedir comportamiento por defecto

Víctor Sáez, modifié il y a 7 années.

Cambiar pestañas programaticamente e impedir comportamiento por defecto

New Member Publications: 9 Date d'inscription: 10/03/15 Publications récentes
Estoy utilizando la etiqueta <liferay-ui:tabs para la navegación entre pestañas en un portlet :

<portlet:actionURL name="changeTab" var="changeTabURL"></portlet:actionURL>
<aui:form action="<%= changeTabURL %>" name="fm">
<liferay-ui:tabs
names="uno,dos"
param="tab"
refresh="false"
tabsValues="uno,dos"
type="tabs" value="<%=currentTab %>">

<liferay-ui:section>
<%@ include file="/html/miportlet/uno.jsp"%>
</liferay-ui:section>
<liferay-ui:section>
<%@ include file="/html/miportlet/dos.jsp"%>
</liferay-ui:tabs>


Lo que intento conseguir es navegar entre pestañas de forma programática e impedir que los usuairos haciendo click en la pestañas, cambien a otra.
He conseguido implementar una navegación entre pestañas con botones "Siguiente" y "Anterior" , realizando peticiones a controlador de un portlet que extiende de la classe MVCPortlet y modificando la propiedad "currentTab", pero lo que no consigo es hacer que el usuario siga pudiendo pulsar en el enlce de la pestaña. Para intentar la navegación a través de las pestañas he intentado el siguiente código :
var nodeListTabs = A.all('.tab');
console.log(nodeListTabs);

var nodeNum =0;
nodeListTabs.each(function() {

var currentNode = this;

console.log(currentNode);
currentNode.on('click',function(event){
console.log('evento : ');
console.log(event);

event.stopPropagation();
return false;
});

});

El código anterior se ejecuta puesto que puedo ver los mensajes en consola pero no impide esta navegación.

Por favor, alguien me podría dar alguna idea. Muchas gracias de antemano