Ankündigung

Einklappen
Keine Ankündigung bisher.

Auflösen der 'Bedingte Anzeige' mit JS möglich?

Einklappen
X

Auflösen der 'Bedingte Anzeige' mit JS möglich?

Einklappen
  • Filter
  • Zeit
Alles löschen
neue Beiträge

  • Auflösen der 'Bedingte Anzeige' mit JS möglich?

    Hallo,

    ich habe eine Tabelle, welche ich zunächst beim Laden der Seite nicht anzeigen lassen möchte, da diese vor der Anzeige noch durch eine Abhängigkeit verkürzt wird.
    Dies ist notwendig, da der Filter zu kompliziert für die Abfrage war (Datums und Zeit Filter anhand von Hilfsfeldern).

    Tue ich dies nicht blitzen alle Datensätze auf und werden dann durch die gewünschten ersetzt - nicht schön.

    Mein Wunsch ist es also eine Tabelle solange auszublenden, bis die Abhängigkeit sie verkürzt hat.

    MEIN ANSATZ:

    - Ausblenden der Gruppierung der Tabelle durch 'Bedingte Anzeige' ->
    Code:
    #set($show_simplegroup442BA0BB = false)
    - Ansichtstabelle wird geladen (Alle Datensätze)
    - onLoad Abhängigkeit läuft über Tabelle (RelevantenDatensätze)
    - onTrigger Javascript Funktion als Teil der Abhängigkeit blendet die verkürzte Tabelle ein

    Dazu folgendes JS Snippet:

    Code:
    function showAppointmentsInTimeFrame() {
    var group = getElement("D3B8BAC2CB2679CB1729620FEC8AE2FCA135E0B9"); 
    group.style.display = "block"
    return true;}

    Nun bekomme ich den Fehler, das ich das Display Property nicht auf einem undefinierten Element verändern kann.


    Meine Frage(n) daher:

    - Werden serverseitig 'versteckte Elemente' mit gerendert?
    - Lassen sich diese durch JS wieder einblenden?
    - Wenn ja - Wie adressiere ich diese Elemente?
    - Gibt es einen vll. besseren Weg um das 'flackern' meiner Ansicht zu verhindern?


    vielen Dank.


  • #2
    Was per Velocity / Bedingt Ansicht ausgeblendet wird ist für JS nicht da. Es müsste die Ausblendung also über JS erfolgen und dann später (tja, wann?) die Einblendung.

    Wird denn die Abhängigkeit durch die Benutzer:innen verändert? Braucht es also wirklich eine Abhängigkeit und kann die gewünschte Filterung nicht doch im Filter der Tabelle erfolgen (ggf. über per Velocity gesetzte Parameter)?

    Kommentar


    • #3
      Danke für die Antwort, Reiner!

      Nur um das noch mal klar zu verstehen:

      Velocity ist am Ende ja die 'template engine', also zuständig dafür dass aus der intrexx app ein DOM im Client wird.

      Eine Velocity Bedingung wie
      Code:
      #set($show_simplegroup442BA0BB = false)
      hat zur Folge, dass ein Element vor dem rendern "ausgeschlossen" wird, also gar nicht im DOM enthalten ist (nicht display: none etc...)

      Macht ja durchaus Sinn!
      --

      Das Problem mit per Velocity gesetzten Parametern ist, dass diese bei einem Datumswert nicht zur Auswahl stehen im Filter.

      "Systemwert" kennt bei Auswahl eines DT_Felds nur "Heute mit Uhrzeit"

      "Verarbeitungskontext" etc. pp. stehen nur zur Verfügung wenn man zum Beispiel ein String Feld vergleicht, soweit meine Beobachtung.

      Täusche ich mich da?

      vielen Dank!

      Kommentar

      Lädt...
      X