Contao-Camp 2024
Ergebnis 1 bis 15 von 15

Thema: DCA für Checkbox und Aktion nach Aktivieren

  1. #1
    Alter Contao-Hase
    Registriert seit
    28.09.2010.
    Beiträge
    1.368

    Standard DCA für Checkbox und Aktion nach Aktivieren

    Hallo,

    ich brauche im DCA für einen Checkbox eine Aktion, wenn die Checkbox aktiviert wird.
    Bei angeklickter Checkbox soll ein oder mehrere andere Felder Pflichtfelder werden, bei Deaktivierung sollen es
    wieder keine Pflichtfelder sein ....


    Wie kann ich das besten anstellen?

    Danke

    Mark Knochen

  2. #2
    Contao-Urgestein Avatar von Andreas
    Registriert seit
    19.06.2009.
    Ort
    Mönchengladbach
    Beiträge
    7.703
    User beschenken
    Wunschliste
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Du kannst die Felder als Pflichtfelder deklarieren und erst anzeigen lassen, wenn die Checkbox angehakt wird. Im Core gibt es dazu einige Beispiele, z.B. "Element schützen".
    Bitte!
    Vor Anfragen im Forum HTML validieren.
    Codesnippets hier im Froum sauber einrücken. Nur Tabs o. nur Leerzeichen verwenden.

    Vielen Dank an alle Wunschlistenerfüller
    Andreas Burg, Web Solutions

  3. #3
    Alter Contao-Hase
    Registriert seit
    28.09.2010.
    Beiträge
    1.368

    Standard

    das hab ich mit abhängigen Checkboxen schon mal gemacht, das ist aber nicht das, was gebraucht wird.

    Das Feld "Bild hinzufügen" und "Bild" ist ja permanent vorhanden ... soll aber Pflichtfeld werden, wenn diese Checkbox aktiviert ist
    ansonsten bleibt das Bild optional wie es standard ist


    Mark

  4. #4
    Contao-Urgestein Avatar von Andreas
    Registriert seit
    19.06.2009.
    Ort
    Mönchengladbach
    Beiträge
    7.703
    User beschenken
    Wunschliste
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Deine Checkbox soll doch auch permanent vorhanden sein, oder? Sonst macht das doch keinen Sinn.

    Ein Feld, welches nicht ausgefüllt wird, da ist es doch erstmal egal, ob es sichtbar ist (zum Ausfülllen angeboten wird) oder nicht, oder?

    Und wenn du es ausfüllst, dann kann es doch auch Pflichtfeld sein, oder nicht?

    Brauchst du einen Unterschied zwischen ausgefüllten Feldern welche einmal ausgefüllt und Pflicht sein müssen und einmal ausgefüllt und nicht Pflicht?

    Ich verstehe das Problem nicht. Vielleicht anhand eines Usecases?
    Bitte!
    Vor Anfragen im Forum HTML validieren.
    Codesnippets hier im Froum sauber einrücken. Nur Tabs o. nur Leerzeichen verwenden.

    Vielen Dank an alle Wunschlistenerfüller
    Andreas Burg, Web Solutions

  5. #5
    Alter Contao-Hase
    Registriert seit
    28.09.2010.
    Beiträge
    1.368

    Standard

    Alle Felder sind permanent vorhanden .... nur bei Aktivierung der Checkbox sollen bestimmte Felder zu Pflichtfeldern werden.
    Es soll nichts ein oder ausgeblendet werden ... alle Felder sind immer sichtbar.

  6. #6
    Contao-Urgestein Avatar von Andreas
    Registriert seit
    19.06.2009.
    Ort
    Mönchengladbach
    Beiträge
    7.703
    User beschenken
    Wunschliste
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Ansonsten könntest du versuchen mit dem onLoadCallback den Status der Checkbox zu erfragen und daraufhin das DCA zu ändern. Aber ich kann mir im Moment keinen Fall vorstellen, wo dies Sinn machen würde.
    Bitte!
    Vor Anfragen im Forum HTML validieren.
    Codesnippets hier im Froum sauber einrücken. Nur Tabs o. nur Leerzeichen verwenden.

    Vielen Dank an alle Wunschlistenerfüller
    Andreas Burg, Web Solutions

  7. #7
    Contao-Urgestein Avatar von Andreas
    Registriert seit
    19.06.2009.
    Ort
    Mönchengladbach
    Beiträge
    7.703
    User beschenken
    Wunschliste
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Zitat Zitat von Mark Knochen Beitrag anzeigen
    ... alle Felder sind immer sichtbar.
    Wo benötigst du diesen Unterschied, wenn du eines dieser Felder ausfüllst und es ist kein Pflichtfeld, bzw. ausfüllst und es ist ein Pflichtfeld? Use case?
    Bitte!
    Vor Anfragen im Forum HTML validieren.
    Codesnippets hier im Froum sauber einrücken. Nur Tabs o. nur Leerzeichen verwenden.

    Vielen Dank an alle Wunschlistenerfüller
    Andreas Burg, Web Solutions

  8. #8
    Community-Moderatorin & Contao-Urgestein Avatar von mlweb
    Registriert seit
    10.07.2011.
    Beiträge
    6.715
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Wenn ich Dein Problem richtig verstehe, kannst Du die Erweiterung [DependendMandantoryFormField] dafür nutzen. Ist zwar offiziell nur bis Contao 3.5 freigegeben, aber ich habe sie gestern unter Contao 4 getestet und Cliff informiert, dass sie problemlos läuft https://community.contao.org/de/show...l=1#post485427
    Ich habe Dir mit meinen Hinweisen geholfen und Du möchtest Dich bedanken?
    Unterstütze bitte das Contao-Projekt (Button Links)
    Weitere Spendenmöglichkeiten
    ------------------------------------------------------------------------------------------------------
    Contao-Dokumentation: Contao-Handbuch und Contao-Entwickler-Doku
    Contao-Online-Video-Kurse: Contao Academy
    Funktionalität erweitern: Contao-Erweiterungen

    Für Dinge die man mit html5 und css3 lösen kann, braucht man kein javascript.




  9. #9
    Community-Moderatorin & Contao-Urgestein Avatar von mlweb
    Registriert seit
    10.07.2011.
    Beiträge
    6.715
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Zitat Zitat von Andreas Beitrag anzeigen
    Wo benötigst du diesen Unterschied, wenn du eines dieser Felder ausfüllst und es ist kein Pflichtfeld, bzw. ausfüllst und es ist ein Pflichtfeld? Use case?
    Ich habe bei mir zwar tatsächlich versteckte Felder. Aber einen Use case könnte ich mir auch bei sichtbaren Feldern vorstellen. Zum Beispiel Auswahl Kontakt per Telefon oder per Email. Einmal wird Telefon zum Pflichtfeld in zweiten Fall Email.
    Ich habe Dir mit meinen Hinweisen geholfen und Du möchtest Dich bedanken?
    Unterstütze bitte das Contao-Projekt (Button Links)
    Weitere Spendenmöglichkeiten
    ------------------------------------------------------------------------------------------------------
    Contao-Dokumentation: Contao-Handbuch und Contao-Entwickler-Doku
    Contao-Online-Video-Kurse: Contao Academy
    Funktionalität erweitern: Contao-Erweiterungen

    Für Dinge die man mit html5 und css3 lösen kann, braucht man kein javascript.




  10. #10
    Contao-Nutzer Avatar von eki89
    Registriert seit
    20.04.2016.
    Beiträge
    41
    Partner-ID
    11715
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Alternativ könnte man auf die Checkbox einen submitOnChange legen, damit die Seite neu geladen wird. Im onLoad Callback des DCAs kann man dann überprüfen, ob die Checkbox angeklickt wurde, um die Information für das Feld im DCA umzuschreiben (mandatory flag umschreiben in eval).

  11. #11
    Contao-Urgestein Avatar von cliffparnitzky
    Registriert seit
    08.10.2010.
    Ort
    Lüneburg
    Beiträge
    2.446
    User beschenken
    Wunschliste
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Zitat Zitat von mlweb Beitrag anzeigen
    Wenn ich Dein Problem richtig verstehe, kannst Du die Erweiterung [DependendMandantoryFormField] dafür nutzen. ...
    Nein, die Extension hilft hier nicht. Die ist für das Frontend, hier wird aber im Backend gearbeitet.

    Zitat Zitat von eki89 Beitrag anzeigen
    Alternativ könnte man auf die Checkbox einen submitOnChange legen, damit die Seite neu geladen wird. Im onLoad Callback des DCAs kann man dann überprüfen, ob die Checkbox angeklickt wurde, um die Information für das Feld im DCA umzuschreiben (mandatory flag umschreiben in eval).
    Ja, das ist das was Andreas oben skizzierte. Wird hier ein guter Weg sein.

  12. #12
    Community-Moderatorin & Contao-Urgestein Avatar von mlweb
    Registriert seit
    10.07.2011.
    Beiträge
    6.715
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Das es ums Backend geht hatte ich übersehen. Entschuldigung.
    Ich habe Dir mit meinen Hinweisen geholfen und Du möchtest Dich bedanken?
    Unterstütze bitte das Contao-Projekt (Button Links)
    Weitere Spendenmöglichkeiten
    ------------------------------------------------------------------------------------------------------
    Contao-Dokumentation: Contao-Handbuch und Contao-Entwickler-Doku
    Contao-Online-Video-Kurse: Contao Academy
    Funktionalität erweitern: Contao-Erweiterungen

    Für Dinge die man mit html5 und css3 lösen kann, braucht man kein javascript.




  13. #13
    Contao-Urgestein Avatar von Andreas
    Registriert seit
    19.06.2009.
    Ort
    Mönchengladbach
    Beiträge
    7.703
    User beschenken
    Wunschliste
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Ja und was macht dies dann im BE für einen Sinn, wenn ich selber entscheiden kann, ob ich ein Feld ausfüllen muss oder nicht? Entweder ist ein Feld Pflichtfeld oder nicht. Ich bin auch vom BE ausgegangen, weil er ja von DCA spricht.

    Zitat Zitat von mlweb Beitrag anzeigen
    Ich habe bei mir zwar tatsächlich versteckte Felder. Aber einen Use case könnte ich mir auch bei sichtbaren Feldern vorstellen. Zum Beispiel Auswahl Kontakt per Telefon oder per Email. Einmal wird Telefon zum Pflichtfeld in zweiten Fall Email.
    Aber dies würde man doch so machen, dass die Felder für Telefonnummer oder Email erst dann eingeblendet werden, wenn ich eine der Checkboxen anhake. Also sind diese Felder doch sowieso Pflicht, sobald sie erscheinen.

    Ansonsten kann man die Felder im FE auch per JS verändern, entweder das Attribut require setzen, oder den type von hidden auf text setzen.
    Bitte!
    Vor Anfragen im Forum HTML validieren.
    Codesnippets hier im Froum sauber einrücken. Nur Tabs o. nur Leerzeichen verwenden.

    Vielen Dank an alle Wunschlistenerfüller
    Andreas Burg, Web Solutions

  14. #14
    Alter Contao-Hase
    Registriert seit
    28.09.2010.
    Beiträge
    1.368

    Standard

    Zitat Zitat von Andreas Beitrag anzeigen
    Ja und was macht dies dann im BE für einen Sinn, wenn ich selber entscheiden kann, ob ich ein Feld ausfüllen muss oder nicht? Entweder ist ein Feld Pflichtfeld oder nicht. Ich bin auch vom BE ausgegangen, weil er ja von DCA spricht.
    es geht ja auch im das Backend und ist einer Hilfe für den User.

    Bei Events sind Bilder z.B. optional ... Kunde hat aber eine bestimmte Kategorie mit besonders "wichtigen" Events, die seperat dargestellt werden und im Layout zwingend ein Bild haben müssen.
    Also hab ich zum einen ein Feld angelegt im DCA, wo der User dann beim Erfassen des Events "wichtiger Event" anhaken kann .... und eben nur dann muss die Verwendung eines Bildes zwingend werden.

    Es dient lediglich zur Hilfe, damit Redakteure nicht einfach mal vergessen bei den gekennzeichneten Events ein Bild mit einzupflegen ...


    Mark

  15. #15
    Contao-Urgestein Avatar von Andreas
    Registriert seit
    19.06.2009.
    Ort
    Mönchengladbach
    Beiträge
    7.703
    User beschenken
    Wunschliste
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Aha, wir kommen der Sache näher - das ist also der use case. Aber dass der User (Redakteur?) dies selber entscheiden muss ist doch das gleiche, als ob er direkt das Bild auswählen würde.

    Zitat Zitat von Mark Knochen Beitrag anzeigen
    ... Kunde hat aber eine bestimmte Kategorie mit besonders "wichtigen" Events, die seperat dargestellt werden und im Layout zwingend ein Bild haben müssen. ...
    Wäre es da nicht besser, man würde direkt diesen Kalender (Kategorie? Gibt es nicht bei Events) als "wichtig" deklarieren (Checkbox) und Events, welche in diesem Kalender erstellt werden hätten direkt die Felder für die Bilder sichtbar, ohne diese über die Checkbox "Ein Bild hinzufügen" abwählen zu können?

    Wenn doch einzeln im Event, so wie bei den News mit der Checkbox "Beitrag hervorheben", das könnte ich jetzt auch vestehen - Der Redakteur kann dieses Event als "featured" oder was auch immer deklarieren, aber wenn er dies macht, dann muss auch ein Bild hinzugefügt werden.

    Beides wirst du wahrscheinlich mit einem onLoadCallback() o.ä. im DCA lösen können. Siehe auch hier: https://docs.contao.org/books/api/dca/reference.html
    Bitte!
    Vor Anfragen im Forum HTML validieren.
    Codesnippets hier im Froum sauber einrücken. Nur Tabs o. nur Leerzeichen verwenden.

    Vielen Dank an alle Wunschlistenerfüller
    Andreas Burg, Web Solutions

Aktive Benutzer

Aktive Benutzer

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)

Lesezeichen

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •