Antwort Bedingung in gleicher Frage

More
1 month 3 weeks ago - 1 month 3 weeks ago #158961 by jankohl
jankohl created the topic: Antwort Bedingung in gleicher Frage
Hallo zusammen,

ich hätte eine kleine Frage zur LimeSurvey Version 2.67.3+170728

Ich habe eine Frage Q1 mit dem Fragetyp "Liste (Optionsfelder)" erstellt, mit Antworten A1, A2 und A3.

Mein Ziel ist es, dass wenn man die Antwort A1 auswählt, dass dann unter der Antwort A1 weitere Antwortmöglichkeiten erscheinen (die ausgeblendet / versteckt sind, wenn A1 nicht ausgewählt ist), am besten eingerückt. Also quasi wie Unterkategorien, die nur erscheinen, wenn die Antwort A1 ausgewählt wurde.

Ist dies irgendwie möglich? Ich habe es nur hinbekommen, dass eine weitere Frage Q2 erscheint, wenn A1 ausgewählt ist, diese erscheint allerdings erst nach der Frage Q1 und allen Antworten, was total unübersichtlich ist.

Mit freundlichen Grüßen
Jan Kohl
Attachments:
Last Edit: 1 month 3 weeks ago by jankohl.

Please Log in to join the conversation.

More
1 month 3 weeks ago #158978 by Joffm
Joffm replied the topic: Antwort Bedingung in gleicher Frage
Hallo, jankohl.

die Frage, die sich mir als Erstes stellt: Du hast eine Einfachnennungs-Frage. Was soll das also?
Das heißt, der Respondent klickt etwas an, dann öffnet sich etwas, er klickt dieses, der erste Klick verschwindet aber wieder.

Ich denke Du meist so etwas:

also Unterkategorien zu Dachs, wobei dann sowohl der Oberbegriff als auch die gewählten Unterpunkte checkbar sind.

Dazu fügst Du folgendes Script in den Fragetext ein (natürlich im Quellcode-Modus):
<script type="text/javascript" charset="utf-8">
// A function to handle "secondary" checkboxes
function secondaryCheckboxes(qID, primaryPosition, secondaryCount) {
	// Identify the elements
	var thisQuestion = $('#question'+qID);
	$('div.question-item', thisQuestion).parent().addClass('answer-row');
	var primaryRow = $('div.question-item:eq('+(primaryPosition-1)+')', thisQuestion).closest('.answer-row');
	var primaryInput = $('input.checkbox', primaryRow);
	var secondaryRows = primaryRow.nextAll('div.answer-row:lt('+(secondaryCount)+')');
	var secondaryInputs = $('input.checkbox', secondaryRows);
 
	// Indent the secondaries
	secondaryRows.css({ 'margin-left':'2.5em' });
 
	// Initial states of the secondary answers
	if (primaryInput.prop('checked') == false ) {
		secondaryRows.hide(); 
	} 
 
	// A listener on the primary answer to show or hide secondary answers 
	primaryInput.click(function (event) { 
 
		// Hide/show the secondary answers accordingly
		if (!$(this).is(':checked')) {
			secondaryRows.hide();				
			secondaryInputs.prop('checked', false);
			secondaryInputs.each(function(i) {
				checkconditions(this.value, this.name, this.type);
			});
		}
		else {
			secondaryRows.show(); 
		}
	});
}
 
	$(document).ready(function() {
		// Sub-question 1 is primary followed by 2 secondaries
		secondaryCheckboxes({QID}, 1, 2);   //Hier steht also, dass nach Teilfrage 1 zwei Unterkategorien kommen
		// Sub-question 6 is primary followed by 3 secondaries		
		secondaryCheckboxes({QID}, 6, 3);   //Hier steht also, dass nach Teilfrage 6 drei Unterkategorien kommen
    });	
</script>

In den Teilfragen wird ganz normal durchnummeriert:
1 Ameise
2 Ameisenbär
3 Ameisenlöwe
4 Biber
5 Chamäleon
6 Dachs
7 Weißdachs
8 Frechdachs
9 Schwarzdachs
10 Elefant, der mit dem langen Rüssel
11 Giraffe, auch mit einem ganz langen Hals
12 Habicht

Viel Erfolg
Joffm

P.S. Du kannst ja einmal versuchen, das Script von Mehrfachnennung auf Einfachnennung umzubauen, also "Checkbox" durch "Radio" ersetzen. Keine Ahnung, ob so etwas geht.

Please Log in to join the conversation.

More
1 month 3 weeks ago #158982 by jankohl
jankohl replied the topic: Antwort Bedingung in gleicher Frage
Hallo Joffm,

vielen Dank für die Antwort :)

Genau das wollte ich! Das mit der Einfachauswahl war etwas blöd gedacht, natürlich ist eine Mehrfachauswahl sinnvoller. Funktioniert ohne Probleme ;)

Man lernt ja immer dazu :) Werde mich in Zukunft mal ein wenig mehr mit LimeSurvey beschäftigen.

Vielen Dank nochmal
Jan Kohl

Please Log in to join the conversation.

More
1 month 3 weeks ago - 1 month 3 weeks ago #158988 by jankohl
jankohl replied the topic: Antwort Bedingung in gleicher Frage
Hallo Joffm,

gibt es auch einen Beispielcode für mehrere Unterkategorien? Wenn ich jetzt Test2 (siehe Bild) anklicke, dann erscheinen zwar Test3 und Test4, allerdings sind diese nicht eingerückt. Ich habe jetzt versucht, den Code ein wenig anzupassen und habe es nun hinbekommen, eine weitere eingerückte Unterkategorie zu haben, allerdings werden, wenn ich die eine Unterkategorie ausklappte auch die weiteren Unterkategorien ausgeklappt. (sieht Bild 2)

Mit freundlichen Grüßen
Jan Kohl
Attachments:
Last Edit: 1 month 3 weeks ago by jankohl.

Please Log in to join the conversation.

More
1 month 3 weeks ago #158995 by Joffm
Joffm replied the topic: Antwort Bedingung in gleicher Frage
Hallo, Jan,
ich weiß nicht, wie lange Du hier im Forum bereits liest.
Ich kokettiere immer damit, dass ich keine Ahnung von JavaScript habe.
Dieses Script habe ich auch hier aus dem Forum. Es ist - natürlich - von Tony (tpartner).
Also müsstest Du diese Frage dann im englischen Teil stellen.
Dort solltest Du auch einmal den Thread über "Cascading Combos" verfolgen.

Bis dann
Joffm

Please Log in to join the conversation.

More
1 month 3 weeks ago - 1 month 3 weeks ago #159003 by Joffm
Joffm replied the topic: Antwort Bedingung in gleicher Frage
Hallo, Jan,
da wir kein Beispiel von Dir haben, wie die Frage wirklich aussieht, hier einmal ein anderer Ansatz.

Lass die erste Ebene weg und benutze dafür Header.
Wie hier beschrieben:
https://www.limesurvey.org/forum/can-i-do-this-with-limesurvey/107425-headline-in-multiple-choice



Einfach ausprobieren, ist eben schnell gemacht.

Bi dann
Joffm

P.S. Jetzt stimmt natürlich die Fragestellung nicht mehr. Aber klar, ich habe das alte Beispiel "verwurstet"
Last Edit: 1 month 3 weeks ago by Joffm.

Please Log in to join the conversation.

More
1 month 3 weeks ago - 1 month 3 weeks ago #159008 by Joffm
Joffm replied the topic: Antwort Bedingung in gleicher Frage
Hallo, Jan,
es gibt natürlich die - von mir immer präferierte - Lösung ohne JS.

Und ich finde sie überhaupt nicht unübersichtlich, wie Du in Deinem ersten Beitrag schriebst.

Siehe screenshots und angehängtes Beispiel.

Viel Erfolg
Joffm
Attachments:
Last Edit: 1 month 3 weeks ago by Joffm.

Please Log in to join the conversation.

More
1 month 1 week ago #159480 by jankohl
jankohl replied the topic: Antwort Bedingung in gleicher Frage
Danke für die ganzen Antworten. Das Dropdown Menü ist mir doch ein wenig zu unübersichtlich, da ich über 1000 Antworten habe und man nicht immer durch alle Kategorien scrollen möchte. Ich habe mich jetzt einfach für die Variante mit der weiteren Frage und einer Bedingung entschieden, das ist am einfachsten ;)

Please Log in to join the conversation.

More
1 month 1 week ago - 1 month 1 week ago #159575 by apppublic
apppublic replied the topic: Antwort Bedingung in gleicher Frage
Hi,

jankohl wrote: ...
gibt es auch einen Beispielcode für mehrere Unterkategorien? Wenn ich jetzt Test2 (siehe Bild) anklicke, dann erscheinen zwar Test3 und Test4, allerdings sind diese nicht eingerückt. Ich habe jetzt versucht, den Code ein wenig anzupassen und habe es nun hinbekommen, eine weitere eingerückte Unterkategorie zu haben, allerdings werden, wenn ich die eine Unterkategorie ausklappte auch die weiteren Unterkategorien ausgeklappt. (sieht Bild 2)
...


Könntest du mal den geänderten Code posten? Wäre dann vermutlich einfacher nachzuvollziehen was du schon gemacht hast und was noch zu tun wäre :) Ich tippe mal darauf das du irgendwo noch zu wenig hide() und damit auch zu wenig show() dabei hast.

BG

{Dankeschön_Thank.You}
Last Edit: 1 month 1 week ago by apppublic. Reason: edit

Please Log in to join the conversation.

Start now!

Just create your account and start using Limesurvey today.

Register now
Join our Newsletter!