0 votes
in SoSci Survey (dt.) by s101077 (135 points)
edited by SoSci Survey

Ich entwickle gerade einen Fragebogen zum Thema Belastungswahrnehmung. Dazu werden in einem Polaritätenprofil bestimmte Themen abgefragt.
Wählt eine Person eine der beiden Seiten aus, soll eine weitere Frage auftauchen in der mithilfe eines Dropdown Menüs die Belastung erfragt wird. Dieses Feld soll immer sofort erscheinen, wenn ein Wert von >3 ausgewählt wurde.
Mit hilfe der Anleitung Sofort Filter nach Dropdown Frage, funktioniert es leider bei mir nicht. Die erste Frage wird angezeigt, wähle ich dort den extremsten Wert aus, erscheint die zweite Frage nicht.
Vielen Dank für die Hilfe!

https://www.soscisurvey.de/KonflikteamArbeitsplatz/?q=qnr3
<script type="text/javascript">
<!--
var polar = document.getElementById("KA01_01");  // Das Eingabefeld der Frage DD01
var frage = document.getElementById("KA02");  // Die Frage DD02, die ein-/auszublenden ist
 
function toogle() {
  if (polar.value == "7") {  // Hier den Wert (Antwortcode) eintragen, bei dem das zweite Dropdown eingeblendet werden soll
    frage.style.display = "";
  } else {
    frage.style.display = "none";
  }
}
 
SoSciTools.attachEvent(dropdown, "change", toogle);  // Bei einer Änderung der Auswahl die Anzeige anpassen
SoSciTools.attachEvent(dropdown, "click", toogle);  // Auch beim Klick prüfen - sonst wird die Änderung evtl. erst beim Verlassen des Dropdowns wirksam
toogle();  // Und zu Beginn auch die korrekte Anzeige sicherstellen
// -->
</script>
by SoSci Survey (328k points)
Wenn Sie in Ihrer Frage den bisher verwendeten JavaScript-Code ergänzen sowie einen Pretest-Link direkt (!) zur betroffenen Frage, kann ich Ihnen gerne konkrete Empfehlungen geben.
by SoSci Survey (328k points)
Ich hätte schreiben sollen, dass ein kurzer Kommentar zur Ergänzung sinnvoll wäre, damit ich informiert werde. Pardon.

Der Link scheint mittlerweile nicht mehr gültig?

1 Answer

0 votes
by SoSci Survey (328k points)

Beim Polaritätenprofil haben Sie - anders als beim Dropdown - mehrere Eingabefelder. Und das Script muss auf jedes davon reagieren. Entweder um die Frage ein- oder um sie auszublenden.

Die 5 Eingabefelder könnten Sie z.B. wie folgt abfragen:

var polars = [
    document.getElementById("KA01_011"),
    document.getElementById("KA01_012"),
    document.getElementById("KA01_013"),
    document.getElementById("KA01_014"),
    document.getElementById("KA01_015")
]

Diese Eingabefelder können Sie dann mit dem "click"-Event verknüpfen:

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

Den Wert würden sie dann darübr abfragen, ob ein bestimmtes Feld markiert ist:

if (polars[0].checked) {

Es gibt auch eine JavaScript-Bibliothek, welche den Umgang mit Skalen und Polprofilen deutlich vereinfacht. Sodass jedes Item nur als ein Objekt behandelt wird, nicht als 5 Eingabefelder. Wenn noch Interesse besteht, suche ich gerne heraus, wie die Programmierung damit aussehen würde.

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

...