Hallo Visforms Support-Team,ich versuche
abhängige SQL-Dropdown-Felder (Cascading Dropdowns) zu implementieren. Die Felder werden korrekt angezeigt, aber die
Abhängigkeit funktioniert nicht - das Child-Feld wird nicht aktualisiert wenn das Parent-Feld geändert wird.Mein Setup:
- Joomla Version: 6.0.1
- Visforms Version: Subscription (aktuelle Version mit SQL-Feldern)
- Template: Custom selbst entwickeltes Template
- Getestet mit: Joomla Standard-Template "Cassiopeia" - gleiches Problem
- Formular: "Charakter erstellen" (ID: 1)
- Ziel: Server auswählen → nur passende Worlds im zweiten Dropdown anzeigen
Datenbank-Struktur:
Tabelle 1: nwubeta_nwu_servers
Code:
id | server_name | published
1 | US West | 1
2 | US East | 1
3 | SA East | 1
4 | EU Central | 1
5 | AP Southeast | 1
Tabelle 2: nwubeta_nwu_worlds
id | world_name | server_id | published
Code:
1 | El Dorado | 1 | 1
2 | Valhalla | 2 | 1
3 | Tumtum | 2 | 1
4 | Devaloka | 3 | 1
5 | Nysa | 4 | 1
6 | Delos | 5 | 1
Feld-Konfiguration:
Parent-Feld: serverliste2
- Feldtyp: Listbox SQL
- Name: serverliste2
- Label: serverliste 2
- Status: Veröffentlicht
- Optionen (manuell):
- Wert: 0 | Label: -- Bitte Server wählen --
- Wert: 1 | Label: US West
- Wert: 2 | Label: US East
- Wert: 3 | Label: SA East
- Wert: 4 | Label: EU Central
- Wert: 5 | Label: AP Southeast
→ Dieses Feld funktioniert perfekt als Dropdown!Child-Feld: world_clean
- Feldtyp: Listbox SQL
- Name: world_clean
- Label: world_clean
- Status: Veröffentlicht
- Form ID: 1
Tab "Dynamische-Einstellungen":
- Reload erlauben: Ja ✅
- Bei Änderung von nachladen: serverliste2 (ausgewählt) ✅
- SQL im Form Edit ausführen: Ja ✅
- Einzige Option vorauswählen: Nein
SQL-Select-Statement
SQL
Code:
SELECT 0 AS value, '-- Bitte World wählen --' AS label
UNION
SELECT id AS value, world_name AS label
FROM nwubeta_nwu_worlds
WHERE published = 1
AND server_id = '{serverliste2}'
ORDER BY value
→ Dieses Feld wird als Dropdown angezeigt, aber die Optionen werden NICHT aktualisiert!Was funktioniert:✅ Beide Felder werden korrekt als
Dropdown angezeigt
✅
Backend-Test der SQL-Abfrage erfolgreich (findet Einträge)
✅ Parent-Feld (serverliste2) funktioniert perfekt
✅ Platzhalter-Syntax
entspricht dem Feldnamen
✅ Dokumentation befolgt: [url]
docs.joomla-4.visforms.vi-solutions.de/d...ds-with-option-list/
[/url]
✅ "Reload erlauben" ist aktiviert
✅ "Bei Änderung von nachladen" ist korrekt gesetztWas NICHT funktioniert:❌
Das world_clean Dropdown wird nicht aktualisiert wenn ein Server gewählt wird
❌ Es bleibt immer bei "Wählen Sie einen Wert" / "-- Bitte World wählen --"
❌ Keine sichtbare Reaktion auf Änderung des Parent-Feldes
Erwartetes Verhalten:
- User wählt "US East" (Wert: 2) in serverliste2
- → world_clean sollte sich automatisch aktualisieren und nur Valhalla + Tumtum anzeigen
Aktuelles Verhalten:
- User wählt "US East" in serverliste2
- → world_clean bleibt unverändert, zeigt weiterhin nur die Platzhalter-Option
Was ich bereits versucht habe:✅ Cache komplett geleert (Joomla Backend + Browser mehrfach)
✅ Inkognito-Modus getestet
✅ Mit Joomla Standard-Template "Cassiopeia" getestet - gleiches Problem
✅ Verschiedene Platzhalter-Varianten:
,
- kein Unterschied
✅ Feld neu erstellt (daher der Name "world_clean")
✅ Reihenfolge der Felder geprüft (serverliste2 kommt VOR world_clean)
✅ Browser Console geprüft - keine JavaScript-Fehler sichtbar
✅ Alte Test-Felder deaktiviert/gelöschtZusätzliche Informationen:
- Das Problem tritt sowohl im Custom Template als auch im Standard Cassiopeia Template auf
- Ein vorheriges Feld gleichen Typs hatte Rendering-Probleme (wurde als Text statt Dropdown angezeigt) - durch Neuanlage behoben
- Normale Listbox-Felder (ohne SQL) funktionieren einwandfrei
- Die SQL-Abfrage funktioniert im Backend-Test korrekt
Fragen:
- Warum wird das Child-Feld nicht aktualisiert obwohl alle Einstellungen korrekt sind?
- Gibt es zusätzliche Anforderungen für abhängige SQL-Felder die in der Dokumentation fehlen?
- Gibt es JavaScript-Debugging-Möglichkeiten um zu sehen ob das Reload-Event ausgelöst wird?
- Gibt es eine Möglichkeit, 2SQL Felder in Abhängigkeit zu bringen?
Vielen Dank für eure Unterstützung!Mit freundlichen Grüßen, MacLeod