Vielleicht noch zur Ergänzung: Ich habe nämlich bei dieser Rangordnungsfrage (VM02) mit dem Einblenden zusätzlicher Fragen, im Falle dass ein bestimmtes Kärtchen ausgewählt wird, schon herumexperimentiert.
Ich habe die Frage "VM02" auf eine Seite gesetzt und darunter die Fragen "VM03", "VM04" & "VM09" als DIV-Elemente (mit den IDs "blockVM03", "blockVM04" & "blockVM09") eingebunden. Und darunter dann folgenden HTML-Code gesetzt:
<script type="text/javascript">
var pkwFahrerin = document.getElementById("VM02_01");
var pkwMitfahrerin = document.getElementById("VM02_02");
var fahrradfahrerin = document.getElementById("VM02_20");
var eBikefahrerin = document.getElementById("VM02_21");
var fahrrradtoken = document.getElementById("VM02_20Tkn");
var ebiketoken = document.getElementById("VM02_21Tkn");
function autofahren() {
// Diese Prüfung wird für jede einzublendende Frage wiederholt
var fragePkw = document.getElementById("blockVM03");
if ((parseInt(pkwFahrerin.value) > 0) || (parseInt(pkwMitfahrerin.value) > 0)) {
// Wenn Pkw ausgewählt wurde, wird eine Frage zum
//Eigentumsstatus des Pkws angezeigt;
// Anzeigen
fragePkw.style.display = "";
} else {
// Ausblenden
fragePkw.style.display = "none";
}
}
function fahrradfahren() {
var frageRad = document.getElementById("blockVM04");
if (parseInt(fahrradfahrerin.value) > 0) {
// Anzeige
frageRad.style.display = "";
} else {
// Ausblenden
frageRad.style.display = "none";
}
}
function ebiken() {
var frageEbike = document.getElementById("blockVM09");
if (parseInt(eBikefahrerin.value) > 0) {
// Anzeige
frageEbike.style.display = "";
} else {
// Ausblenden
frageEbike.style.display = "none";
}
}
// Die Funktion sollte zunächst einmal direkt aufgerufen werden,
// es müssen ja alle Dropdowns ausgeblendet werden
autofahren();
fahrradfahren();
ebiken();
// Nun muss die Funktion noch mit dem change-Ereignis des ersten
// Dropdowns verknüpft werden
SoSciTools.attachEvent(pkwFahrerin, "click", autofahren);
SoSciTools.attachEvent(pkwFahrerin, "change", autofahren);
SoSciTools.attachEvent(pkwMitfahrerin, "click", autofahren);
SoSciTools.attachEvent(pkwMitfahrerin, "change", autofahren);
SoSciTools.attachEvent(fahrradfahrerin, "click", fahrradfahren);
SoSciTools.attachEvent(fahrradfahrerin, "change", fahrradfahren);
SoSciTools.attachEvent(eBikefahrerin, "click", ebiken);
SoSciTools.attachEvent(eBikefahrerin, "change", ebiken);
SoSciTools.attachEvent(fahrradtoken, "click", fahrradfahren);
SoSciTools.attachEvent(fahrradtoken, "change", fahrradfahren);
SoSciTools.attachEvent(ebiketoken, "click", ebiken);
SoSciTools.attachEvent(ebiketoken, "change", ebiken);
//-->
</script>
In den letzten Zeilen habe ich mit der attachEvent-Funktion herumexperimentiert, wie man sieht. Hier wurde ich nicht so richtig schlau, ob ich eher die Items "VM02_20" usw. anpacken muss oder die Tokens "VM02_20Tkn". Bei der ersten einzublendenden Frage war es ausreichend mit den Item-IDs zu arbeiten, die beiden weiteren einzublendenden Fragen haben mal funktioniert und mal wieder nicht....
Letztlich habe ich dieses Problem vereinfacht und die Zusatzfragen erst auf der nächsten Seite mittels PHP eingebunden.
Deshalb bin ich ein bisschen skeptisch, ob ich dann eine noch kompliziertere Variante mit aufeinanderfolgenden Rangordnungsfragen hinbekommen würde.