Frage

Vielleicht hatte jemand ein solches Problem, das wie ein spezifisches und besorgniserregendes aussieht Primefaces tabView Komponente.
Es gibt ein Kommentarmodul mit Registerkarten und ich möchte die Kommentarnummer innerhalb der Registerkarte anzeigen, etwa so:

enter image description here

Wie ist es möglich, Text einzubetten, wenn <p:tab> wird dynamisch generiert und enthält viele HTML-Unterelemente (ul , li usw.)?

Danke für die Hilfe.

War es hilfreich?

Lösung

Sie können im Tab-Titel eine Ausgabe hinzufügen.

<p:tab title="Comments #{myBean.number}">
</p:tab>

Bean würde in etwa so aussehen:

@ManagedBean
@ViewScoped
public class MyBean implements Serializable {

  private int number;

  public MyBean() {
    this.number = 5;
  }

  public int getNumber() {
    return number;
  }

  public void setNumber(int number) {
    this.number = number;
  }

  public void addComment() {
    setNumber(number + 1);        
  }

}

enter image description here

Kommentare insgesamt mit Ajax aktualisieren:

<h:form>                                
  <p:tabView id="tabs">
    <p:tab title="Comments #{myBean.number}" >
      <p:commandButton value="Add Comment" 
           action="#{myBean.addComment}" update="tabs"/>
    </p:tab>
    <p:tab title="tab" ></p:tab>
  </p:tabView>
</h:form>

Ich konnte das Update auf Tab-Ebene nicht ordnungsgemäß zum Laufen bringen, aber das Aktualisieren der gesamten TabView funktioniert.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top