Ergebnis 1 bis 3 von 3

Thema: Contao Field Callback bei Select Auswahl

  1. #1
    Contao-Nutzer
    Registriert seit
    07.12.2019.
    Beiträge
    147

    Standard Contao Field Callback bei Select Auswahl

    Guten Tag liebe Community,

    ich suche nach einer Möglichkeit im Backend darauf zu reagieren, wenn in einem Select-Feld eine bestimmte Option ausgewählt wird.
    Ich möchte daraufhin ein neues, vorher verstecktes Feld einblenden.

    Gibt es hierfür einen funktionierenden Callback?

    Mit dem save-Callback bekomme ich es unschön hin, weil dafür ein Benutzer erstmal abspeichern müsste und dann auf das neue Feld hingewiesen wird.

    Vielen Dank und Viele Grüße!

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

    Support Contao

    Standard

    Das kann man mit "submitOnChange" und Subpalletten lösen. Wie z.B. in tl_module.

  3. #3
    Contao-Nutzer
    Registriert seit
    07.12.2019.
    Beiträge
    147

    Standard

    Zitat Zitat von cliffparnitzky Beitrag anzeigen
    Das kann man mit "submitOnChange" und Subpalletten lösen. Wie z.B. in tl_module.
    Vielen Dank für die Hilfe. Ich habe es nun hinbekommen.
    Ich lasse noch ein Beispiel da, für den Fall, dass jemand mal ein ähnliches Problem haben sollte:

    PHP-Code:
    // Select-Feld, auf welches wir reagieren wollen als Selector registrieren
    $GLOBALS['TL_DCA']['tl_calendar_events']['palettes']['__selector__'][] = 'eventStatusSelect';

    // Select-Feld mit Bedingung (SelectFeldName_Value => eventStatusSelect_1) als Subpalette registrieren und mit gewünschten Feldern befüllen 
    $GLOBALS['TL_DCA']['tl_calendar_events']['subpalettes']['eventStatusSelect_1'] = 'eventStatusPrevious';


    // Select-Feld registrieren und auf "submitOnChange" achten
    $GLOBALS['TL_DCA']['tl_calendar_events']['fields']['eventStatusSelect'] = [
        
    'exclude' => true,
        
    'inputType' => 'select',
        
    'options' => [=> 'test'=> 'test2'=> 'test3']
        
    'eval' => ['tl_class'=>'w50''submitOnChange'=>true],
        
    'sql' => "varchar(255) NOT NULL default ''"
    ];

    // Feld, welches in der Subpalette erscheinen soll, registrieren
    $GLOBALS['TL_DCA']['tl_calendar_events']['fields']['eventStatusPrevious'] = [
        
    'exclude' => true,
        
    'inputType' => 'text',
        
    'eval' => array('mandatory'=>true'tl_class'=>'w50'),
        
    'sql' => "int(10) unsigned NULL"
    ];

    Contao\CoreBundle\DataContainer\PaletteManipulator::create()
        ->
    addField(['eventStatusSelect'], 'eventTestField'Contao\CoreBundle\DataContainer\PaletteManipulator::POSITION_AFTER)
        ->
    applyToPalette('default''tl_calendar_events'); 

    Lesehinweis:
    - https://docs.contao.org/dev/referenc...s-with-selects
    - https://docs.contao.org/dev/framewor...temanipulator/
    Geändert von Fonjensi (11.03.2022 um 14:38 Uhr)

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
  •