2013-01-14 11 views

Odpowiedz

4

można zrobić to po stronie klienta przy użyciu jQuery:

Zakładając, że używasz kreatora w gablocie: http://www.primefaces.org/showcase/ui/wizard.jsf:

<p:wizard widgetVar="wiz" 
     flowListener="#{userWizard.onFlowProcess}" 
     onNext="hideBackOnLastTab()"> 

javascript:

function hideBackOnLastTab() { 
    if($("ul.ui-wizard-step-titles>li").last() 
      .is("ul.ui-wizard-step-titles>li.ui-state-highlight")) { 
      $("div.ui-wizard-navbar>button.ui-wizard-nav-back").css("display", "none"); 
    } 

} 

Można również zauważyć, że następny przycisk w kreatorze jest ukryty (po stronie klienta PF) na ostatnim panelu w ten sam sposób.

3

Miałem ten sam problem przez długi czas iw końcu go rozwiązałem. Może moje rozwiązanie może być pomocne dla innych w przyszłości:

internetowa:

<p:wizard id="dataLoadSetWizard" widgetVar="wiz" onnext="hideBackOnLastTab()" ... 

Javascript:

function hideBackOnLastTab() { 
      if(PF('wiz').getStepIndex(PF('wiz').currentStep) > 0) { 
       PF('wiz').backNav.css("visibility", "hidden") 
      } 
     } 
+0

Warto wspomnieć, że 'widoczność: hidden' zachowuje miejsca wskazanego elementu - patrz [Co jest różnica między widocznością: ukryty i display: none?] (http://stackoverflow.com/questions/133051/what-is-the-difference-between-visibilityhidden-and-displaynone) – Aziz

+0

Naprawdę użyteczne. Dzięki. – fuzzyanalysis

Powiązane problemy