Hallo allerseits,
seit einigen Tagen beiß ich mir nun schon an mehreren Problemen die Zähne aus.
Eines der schwerwiegensten: Mein Dropdownfeld, welches von Ajax generiert wird, funktioniert nur im Firefox.
Ausgangssituation ist ein Selectfeld, welches beim Ändern eine Javascriptfunktion aufruft, die wiederum eine PHP-Funktion startet, welche die Auswahl verarbeiten. Ein anderes Selectfeld soll daraufhin mit Werten gefüllt werden. Auch dieses Selectfeld besitzt einen Javascriptaufruf, welche beim Ändern der Auswahl gestartet wird.
Jedes der Selectfelder besitzt im Select-Tag die Werte id und name, welche denselben Wert enthalten. Hab irgendwo gelesen, dass Firefox ansonsten Probleme hat, im DOM das richtige Element zu finden.
HTML-Code:
<select id="select2" name="select2" onChange="submitDropdowns(this.id);">
</select>
Das ist der Codeausschnitt aus dem 2. Selectfeld. Das 1. hat, wie gesagt schon Werte. Das 2. soll gefüllt werden.
Per PHP-Funktion werden die Option-Felder an Ajax in die Variable $sForm zurück übergeben, welche dann mittels
PHP-Code:
$objResponse->addAssign("select2","innerHTML",$sForm)
An in das Select-Tag integriert werden.
Doch werden die Werte nur im Firefox angezeigt. In Opera werden keine Werte angzeigt, aber die Dropdownbox funktioniert (Values sind enthalten, nur keine Werte innerhalb der Option-Tags). Im IE funktionierts überhaupt nicht.
Hier nochmal ein Beispiel, was von der PHP-Funktion zurück an $sForm übergeben wird.
PHP-Code:
<option value="1">Erster Wert</option>
<option value="2">Zweiter Wert</option>
Ich weiß einfach nicht weiter... stimmt denn was mit der Rückgabe nicht? Alternativ habe ich auch schon versucht, den kompletten Select-Teil in diese PHP-Funktion auszulagern, doch Fehlanzeige.