Hallo,
ich möchte eine Frage bei der Auswahl von zwei Antworten und einer Ausweichoption sofort einblenden. Mein Code (ich füge ihn unten ein) funktioniert für die zwei Antworten und an anderen Stellen im Fragebogen gut, aber sobald ich die Ausweichption einfüge, ist die Frage beim Testen sofort eingeblendet. Ich bekomme keine Fehlermeldung, auch die Konsole kann nicht weiterhelfen. Ich habe in anderen Fragen die Bitte um einen Pretest-Link gesehen, das kann ich für diesen vertraulichen Fragebogen leider nicht einfach machen, gibt es vielleicht noch eine andere Lösung?
Ich nehme an, es liegt daran, dass die Variablenbezeichnung nicht stimmt, da es funktioniert, sobald ich die Ausweichoption durch eine "normale" Antwort ersetze. Könnte das sein? Ist es möglich die Ausweichoption einzublenden? Im Variablen-Verzeichnis ist sie als -1 definiert.
Ich habe es auch bereits mit -1, -01 und 06a versucht, nichts davon hat funktioniert.
B21 ist eine Auswahlfrage mit einer Ausweichoption, B22 eine offene Textfrage.
Da ich bereits auf mehren Seiten Fragen einblende, habe ich die Optionen etc. durchnummeriert, auf den anderen Seiten hat es mit 1 und 2 gut geklappt.
Der Code ist:
<script type="text/javascript">
<!--
var optionA3 = document.getElementById("BE21_01a"); // Auswahloption "1"
var optionB3 = document.getElementById("BE21_02a"); // Option "2"
var optionC3 = document.getElementById("BE21_03a"); // Option "3"
var optionD3 = document.getElementById("BE21_04a"); // Option "4"
var optionE3 = document.getElementById("BE21_05a"); // Option "5"
var optionF3 = document.getElementById("BE21_-01a"); // Option "6"
var frage3 = document.getElementById("BE22_qst"); // HTML-ID der Texteingabe
function toogle3() {
// Die zwei Pipes (||) sind ein logisches "Oder"
// Die Bedingung prüft also: Ist Option A ausgewählt oder ist B ausgewählt?
if ((optionD3.checked) || (optionE3.checked) || (optionF3.checked)) {
// Wurde "4" "5" "6" ausgewählt, dann wird die Frage angezeigt
// Keine Angabe ("") verwendet die Standard-Einstellung (normal anzeigen)
frage3.style.display = "";
} else {
// Mit der Anzeigeoption "none" wird die Frage ausgeblendet
frage3.style.display = "none";
}
}
// Die Funktion soll jedesmal ausgeführt werden, wenn eine der drei Optionen angeklickt wird
SoSciTools.attachEvent(optionA3, "click", toogle3);
SoSciTools.attachEvent(optionB3, "click", toogle3);
SoSciTools.attachEvent(optionC3, "click", toogle3);
SoSciTools.attachEvent(optionD3, "click", toogle3);
SoSciTools.attachEvent(optionE3, "click", toogle3);
SoSciTools.attachEvent(optionF3, "click", toogle3);
// Und jetzt gleich soll sie auch ausgeführt werden, damit die Anzeige zu Beginn korrekt ist
// (z.B. ausblenden der Texteingabe zu Beginn)
toogle3();
// -->
</script>