2016-04-21 4 views
0

Wie Sie eine Registerkarte in einer tabView aktualisieren, die bereits deaktiviert ist.Aktivieren Sie ein p: tab in einem p: tabView ist bereits deaktiviert, ohne alle form (primefaces) zu aktualisieren

Ich habe versucht, nur die Kopfzeile um den Klassennamen (.ui-tabs-nav) zu aktualisieren, aber nichts passiert. Ich habe auch versucht, ein div zwischen den tabView und Tab hinzuzufügen, um es durch ID zu aktualisieren oder einfach einen Stil zu verwenden, aber JSF rendert dieses nicht.

Antwort

1

Ich habe eine Lösung gefunden, die das direkt mit JavaScript macht, indem ich den Klassenwert ändere.

Wenn JSF den HTML-Code generiert, füllt er jedes Klassen-Tag in diesen Registerkarten mit Werten. Wenn wir eine aktivierte Registerkarte beachten bemerken wir, dass die Klasse enthält ui-state-default ui-corner-top und eine behinderte Klasse enthält ui-state-default ui-corner-top ui-state-disabled

die gewünschte Registerkarte auszuwählen i verwendet diesen Ausdruck

$('ul.ui-tabs-nav li:eq(n)') 

und den Klassen Wert ändern

1- $('ul.ui-tabs-nav li:eq(n)').attr('class', 'ui-state-default ui-corner-top ui-state-disabled'); 

2- $('ul.ui-tabs-nav li:eq(n)').attr('class', 'ui-state-default ui-corner-top'); 

Eine andere Alternative ist zu verwenden:

widgetVar Tag innerhalb der Primzahlen tabView wit h PF('tabView').enable(n) und PF('tabView').disable(n)

n die Registerkarte Rank 0

Ausgangs
Verwandte Themen