0 votes
in SoSci Survey (dt.) by s136815 (550 points)

Liebes SoSci-Team,
bei einer Frage MI83 des Typs "Scala (Zwischenwerte beschriftet)" soll die nachfolgende Frage MI84 auf derselben Seite nur dann angezeigt werden, wenn eines von zwei der vier möglichen Ausprägungen (3 und 4, bzw. Option C und D) des einen Items (MI83_01) vom Befragten angeklickt werden. Die Frage hat folgende Variablen:

MI83_01 An einem Berufskolleg kann es gar nicht gelingen, der gesamten Schülerschaft kult.-ästh. Bildungsaktivitäten anzubieten.

1 = Stimme überhaupt nicht zu
2 = Stimme eher nicht zu
3 = Stimme eher zu
4 = Stimme voll und ganz zu
-9 = nicht beantwortet

Das habe ich mit folgendem Java-Skript versucht:

<script type="text/javascript">
<!--
var optionA = document.getElementById("MI83_01a");  // Option "A"
var optionB = document.getElementById("MI83_01b");  // Option "B"
var optionC = document.getElementById("MI83_01c");  // Option "C"
var optionD = document.getElementById("MI83_01d");  // Option "D"

var frage = document.getElementById("MI84_qst");  // HTML-ID der Texteingabe
 
function toogle() {
    if ((optionA, optionB.checked)) {
          frage.style.display = "";
  } else {
       frage.style.display = "none";
  }
}
 
SoSciTools.attachEvent(optionA, "click", toogle);
SoSciTools.attachEvent(optionB, "click", toogle);
SoSciTools.attachEvent(optionC, "click", toogle);
SoSciTools.attachEvent(optionD, "click", toogle);

 
toogle();
// -->
</script>

Das funktioniert aber nicht. Die Frage MI84 wird immer direkt angezeigt. Ich vermute, die Variablenbezeichnung im Skript ist nicht korrekt. Wie kann ich das Skript so verändern, dass die Frage MI84 nur beim Anklicken von Option C oder D angezeigt wird?
Viele Grüße

1 Answer

0 votes
by SoSci Survey (306k points)

Die IF-Bedingung muss etwas anders formuliert werden, und zwar:

if (optionA.checked || optionB.checked) {

Wenn es das alleine nicht ist, dann müssten Sie bitte die Ausgabe der JavaScript-Fehlerkonsole Ihres Browsers posten oder einen Pretest-Link direkt (!) zur betroffenen Seite im Fragebogen.

by s136815 (550 points)
Meinen Sie mit JavaScript-Fehlerkonsole derartige Informationen, die bei "Konsole" angezeigt werden?
onmozfullscreenchange sollte nicht mehr verwendet werden. velocity.min.js:6:38927
onmozfullscreenerror sollte nicht mehr verwendet werden. velocity.min.js:6:38927
Mutations-Ereignisse sollten nicht mehr verwendet werden. Verwenden Sie MutationObserver stattdessen. analyser.js:482:17
Synchrone XMLHttpRequests am Haupt-Thread sollte nicht mehr verwendet werden, weil es nachteilige Effekte für das Erlebnis der Endbenutzer hat. Für weitere Hilfe siehe http://xhr.spec.whatwg.org/ ajax.js:266:15

Hier sicherheitshalber noch der Pretest-Link zur betreffenden Seite (56):

https://www.soscisurvey.de/kult-aesth-BA-BK/?act=mS22pAMiEZAj0KfUosRTYZv8

Viele Grüße
by SoSci Survey (306k points)
Ja ... aber bei mir steht da auch:

> Error: No element specified for SoSciTools.attachEvent()

Und zwar wird ausgelöst durch folgenden Aufruf:

SoSciTools.attachEvent(optionA, "click", toogle);

Das wiederum stamm daher, dass optionA leer ist, weil diese Zeile kein Element findet:

var optionA = document.getElementById("MI83_01a");

Ursache: Die Kennungen der Auswahlfelder enden nicht mit "a", "b", ..., sondenr mit Ziffern, also z.B. "MI83_011", "MI83_012", u.s.w.

Willkommen im Online-Support von SoSci Survey.

Hier bekommen Sie schnelle und fundierte Antworten von anderen Projektleitern und direkt von SoSci Survey.

→ Eine Frage stellen


Welcome to the SoSci Survey online support.

Simply ask a question to quickly get answers from other professionals, and directly from SoSci Survey.

→ Ask a Question

...