Vielen lieben Dank für die schnelle Antwort!
Die IDs habe ich gecheckt, vielleicht hätte ich das im Originalpost dazuschreiben sollen. Es wird auch kein Fehler angezeigt.
Hier der Pretest-Link:
https://www.soscisurvey.de/test322622/?act=9ldRvRp9fCv3Igeqd6NQVcC1
und hier der genutzte Code (ZB02 - 04 sind die DIV-Elemente, die ich genutzt und vorher definiert habe):
<script type="text/javascript">
(function () {
new DynamicFilter("DF01", "ZB02");
new DynamicFilter("DF01", "ZB03");
new DynamicFilter("DF01", "ZB04");
function DynamicFilter(auswahlID, frageID) {
var optionE = document.getElementById(auswahlID + "_01a"); // HTML-ID der Auswahloption "Ja"
var optionF = document.getElementById(auswahlID + "_02a"); // Option "Nein"
var frage = document.getElementById(frageID + "_qst"); // HTML-ID der Texteingabe
function toggle3 () {
// Die Bedingung prüft also: Ist Option E ausgewählt?
if (optionE.checked) {
// Wurde "Ja" ausgewählt, dann wird die Frage angezeigt
// Keine Angabe ("") verwendet die Standard-Einstellung (normal anzeigen)
frage.style.display = "";
} else {
// Mit der Anzeigeoption "none" wird die Frage ausgeblendet
frage.style.display = "none";
}
}
// Die Funktion soll jedesmal ausgeführt werden, wenn eine der drei Optionen angeklickt wird
SoSciTools.attachEvent(optionE, "click", toggle3);
SoSciTools.attachEvent(optionF, "click", toggle3);
// Und jetzt gleich soll sie auch ausgeführt werden, damit die Anzeige zu Beginn korrekt ist
// (z.B. ausblenden der Texteingabe zu Beginn)
toggle3();
}
})();
// -->
</script>
Ich hoffe, das reicht erstmal für einen Einblick. Ansonsten kann ich gerne mehr posten.
LG