tutorials.de Buch-Aktion 05/2012
ERLEDIGT
JA
ANTWORTEN
8
ZUGRIFFE
488
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    Avatar von Tawarien
    Tawarien Tawarien ist offline Mitglied Bronze
    Registriert seit
    May 2010
    Beiträge
    35
    Hallo.
    Ich wollte mal fragen, ob es die Möglichkeit gibt, Elemente in HTML nur bedingt anzeigen zu lassen.
    Abhänging von einer Variable, die sich am besten mit Javascript umsetzen lässt.
    Sprich ich kicke auf einen Button und ein Element taucht auf.

    Grüße
     

  2. #2
    Maik Tutorials.de Gastzugang
    Hi,

    sollte kein Hindernis darstellen, das Element mittels display:none zunächst im Dokument zu verstecken, und über JS mittels display:block, oder display:inline anzeigen zu lassen.

    mfg Maik
     

  3. #3
    Avatar von Tawarien
    Tawarien Tawarien ist offline Mitglied Bronze
    Registriert seit
    May 2010
    Beiträge
    35
    Danke für deine Hilfe, das funktioniert soweit.
    Nur in dem Projekt, in dem ich diese Funktionalität bräuchte,
    wird JSF verwendet und da habe ich noch Probleme,
    auf die Elemente via JS zuzugreifen.

    Hätte da jemand vielleicht noch ein Tipp?
     

  4. #4
    Maik Tutorials.de Gastzugang
    Kenne mich in bzw. mit Java leider nicht aus.

    Vielleicht ist es in diesem Fall auch ratsamer, das Thema in das passende Fachforum zu verschieben.

    mfg Maik
     

  5. #5
    Avatar von Bexx
    Bexx Bexx ist offline Programmer
    Registriert seit
    Feb 2009
    Ort
    Saarbrooklyn
    Beiträge
    222
    Die PrimeFaces Komponentenbibliothek beispielsweise hat für einige Komponenten sogenannte widgetVars die speziell zum Verwenden mit
    JavaScript Funktionen gedacht sind.

    Beispiel:

    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    
    <p:dialog id="dialogId" widgetVar="dlg" fixedCenter="true" visible="false" modal="true" constrainToViewport="true"
                      styleClass="yourPanelStyle">
                      ....// CONTENT
    </p:dialog>
     
    <h:form>
             <p:commandButton action="#{ backingBean.someAction}" value="Klick me!" onclick="dlg.show();"/>
    </form>

    Jedes Event (onclick, ondblclick, oncomplete, onclose, usw...) das für JSF- Komponenten existiert ist in der Lage JavaScript basierte Aktionen auszuführen.
    Deinen JS-Code kannst du auf XHTML-Seiten einfach wie folgt in den header einbinden:

    HTML-Code:
    <head>
        <script type="text/javascript">
                    // JS- CODE
        </script>    
    </head>
    Geändert von Bexx (14.07.10 um 12:10 Uhr)
     
    Christopher Columbus didn't need directions, neither do we!

    Alles hat eine Logik. Selbst wenn es keine Logik gibt.

    ***

    NetBeans 7.x, GlassFish v3
    JSF 2.0
    Java EE

  6. #6
    Avatar von Tawarien
    Tawarien Tawarien ist offline Mitglied Bronze
    Registriert seit
    May 2010
    Beiträge
    35
    Hm, ich glaub ich poste mal den entsprechenden Code

    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    
    <h:form id="pdForm">
    [...]
         <t:column>
              <h:inputTextarea [...] />
              <h:outputText id="tolong" style="display:none"/>
         </t:column>
    [...]
    </h:form>

    Code :
    1
    2
    3
    4
    5
    6
    
    function visible() {
        document.all.pdForm:tolong.style.display="inline"
    }
    function invisible() {
        document.all.pdForm:tolong.style.display="none"
    }

    Die visible/invisible Funktionen sollen entsprechend eben den Outputtext ein/ausblenden.
    Mit "normalem" HTML klappt das wunderbar, allerdings nicht mit JSF,
    hier bekomme ich JavaScript-Fehler.
    Geändert von Tawarien (14.07.10 um 14:39 Uhr)
     

  7. #7
    Avatar von Bexx
    Bexx Bexx ist offline Programmer
    Registriert seit
    Feb 2009
    Ort
    Saarbrooklyn
    Beiträge
    222
    Warum benutzt du nicht das Validator und ValidatorMessage Attribut der InputTextArea?
     
    Christopher Columbus didn't need directions, neither do we!

    Alles hat eine Logik. Selbst wenn es keine Logik gibt.

    ***

    NetBeans 7.x, GlassFish v3
    JSF 2.0
    Java EE

  8. #8
    Avatar von Bexx
    Bexx Bexx ist offline Programmer
    Registriert seit
    Feb 2009
    Ort
    Saarbrooklyn
    Beiträge
    222
    Saß bis gerade an einem ähnlichen Problem und kann dir jetzt denke ich mal helfen

    Also zunächst einmal sollte der ' : ' da weg,
    dann solltest du Elemente nach ID abfragen, sprich: getElementById('nameOfElement')
    desweiteren les dir mal die doku von display durch

    Versuchs lieber mit visibility

    Sollte das immer noch niox helfen schau dir mal das mächtige jQuery- Framework an
     
    Christopher Columbus didn't need directions, neither do we!

    Alles hat eine Logik. Selbst wenn es keine Logik gibt.

    ***

    NetBeans 7.x, GlassFish v3
    JSF 2.0
    Java EE

  9. #9
    Avatar von Tawarien
    Tawarien Tawarien ist offline Mitglied Bronze
    Registriert seit
    May 2010
    Beiträge
    35
    Hey,
    danke für die Hilfe,
    mit dem getElementById(); klappts nun nach ein bisschen hin und her wunderbar!

    Danke!
     

Ähnliche Themen

  1. MYSQL - Bedingtes Update in einer Anfrage
    Von Cusco im Forum Relationale Datenbanksysteme
    Antworten: 7
    Letzter Beitrag: 10.07.08, 13:09
  2. Elemente aus Elementen aus Elementen zählen ...
    Von trivilian im Forum Relationale Datenbanksysteme
    Antworten: 2
    Letzter Beitrag: 27.12.06, 20:27
  3. Bedingtes Flash-Objekt
    Von Newb im Forum Javascript & Ajax
    Antworten: 4
    Letzter Beitrag: 18.04.06, 17:28
  4. Bedingtes Pflichtfeld erstellen
    Von CProton im Forum Javascript & Ajax
    Antworten: 0
    Letzter Beitrag: 25.09.04, 12:40
  5. Anzahl von Elementen mit Bedinung anzeigen
    Von PingpongRueppel im Forum ASP
    Antworten: 11
    Letzter Beitrag: 05.02.04, 21:27