Overview
Leer hoe u dynamische opties configureert voor dropdown- en multi-selectievelden in ChronoForms. De handleiding behandelt het voorbereiden van uw optie-array met een PHP-actie voor statische/complexe gegevens of een Read Data-actie voor database-gestuurde opties. Het legt het instellen van de Data Source, Option value path en Option text uit, inclusief updates voor v8.0.47 om met eendimensionale arrays om te gaan.
Hier is hoe u het Dynamische Opties gedrag instelt voor de dropdown-velden en multi-selectievelden in ChronoForms v8, dezelfde instelling kan worden gebruikt voor Chronoforms v7
Begin met het voorbereiden van uw optie-array, u kunt dit doen met:
- PHP-actie als u een statische of complexe gegevensbron heeft
- Read Data-actie als uw opties rechtstreeks uit de database komen
PHP-actie instellingen

De PHP-acties zullen een array teruggeven met optiewaarden en teksten
Vervolgens, schakel het Dynamische Opties gedrag in uw dropdown in en stel de Data Source in als {var:php25}, wat in dit geval de geretourneerde waarde is van de PHP-actie genaamd "php25", de actie die we zojuist hebben aangemaakt
We moeten ook de Option value path instellen op: {row:value} en de Option value text op {row:text} aangezien dit het pad is voor de waarden en teksten in onze array:

U kunt standaardopties toevoegen aan het Options vak, deze verschijnen vóór de dynamische opties.
Read Data instellingen

En uw dropdown Dynamische Opties zullen dienovereenkomstig veranderen:

- We gebruiken de resultaten van de actie genaamd "read_users" als de Data Source
- We gebruiken de id-waarde van de rij voor de optiewaarde, elke rij afkomstig van de gebruikers tabel zal een "id" kolomwaarde hebben
- We gebruiken de username-waarde van de rij voor de optietekst, elke rij afkomstig van de gebruikers tabel zal een "username" kolomwaarde hebben
v8.0.47 Update
Als u ChronoForms v8.0.47 of later heeft, kunt u ook {row:key} en {row:value} gebruiken als uw waarden een eendimensionale array zijn, afkomstig van een JSON-array in de database bijvoorbeeld:

in dit geval zal {row:key} de numerieke waarde-index bevatten, en {row:value} zal de waarde zelf bevatten

Comments: