Items ausblenden oder "Filterführung mal anders"

Ihre Fragen, Wünsche und Kommentare an unseren Support-Dienst

Items ausblenden oder "Filterführung mal anders"

Beitragvon support am Di Okt 04, 2011 4:51 pm

Liebe NutzerInnen von eQuestionnaire,

unser Tool wurde um eine weitere individuelle Funktion auf Basis eines Skriptes, das direkt in den Fragebogen integriert wird, erweitert.

Es handelt sich konkret um die Funktion des Ausblendens bestimmter Items, d.h. Fragen in einer Fragegruppe in Abhängigkeit der Auswahl bestimmter Alternativen einer vorangegangenen Fragegruppe.

Ein vereinfachtes Beispiel bietet die Abfrage der Bekanntheit bestimmter Markennamen in einer Rating / Ranking Gruppe, z.B.

"Sind Ihnen die folgenden Markennamen von Softdrinks bekannt?"
- Orangina
- Fanta
- Sinalco
- Sunkist

Alternativen: 1= Ja, kenne ich und 2=Nein, kenne ich nicht.

Wenn Sie nun auf Grundlage der Bekanntheit dieser Marken auf einer späteren Seite in Ihrem Fragebogen weitere Fragen stellen möchten, ist es möglicherweise für Ihre Konzeption sinnvoll, bei den weiteren Fragen nur die dem Probanden bekannten Marken zu betrachten.

Zum Beispiel kennt unser Proband nur die Marken "Orangina" und "Fanta", so soll er im Folgenden auch nur nach diesen gefragt werden, z.B. wie ihm der Markenauftritt dieser Softdrinks gefällt, ob er diese schon einmal getrunken hat, wie sie ihm schmecken, o.ä..

Hierfür werden in allen weiteren, spezifischen Fragengruppen, die sich auf die zuvor abgefragten Marken beziehen, alle diejenigen Marken ausgeblendet, die Proband nicht kennt.

Die entsprechende Fragegruppe enthält also im Backoffice weiterhin alle Marken, es werden dem Probanden im Frotnend aber jeweils nur die ihm bekannanten Marken zur weiteren Bewertung angezeigt.

Die Reihenfolge der Fragenbatterien ist dabei nicht relevant, solange die spezififsche(n) Fragengruppe(n), in denen Items ausgeblendet werden sollen, an irgendeiner Stelle hinter der ersten Abfrage (in unserem Beispiel der Bekanntheit) stehen. Sie können also davor oder dazwischen weitere, nicht spezifische Fragen setzten. Wichtig für die Umsetzung ist dabei nur, dass die jeweiligen Fragengruppen auf unterschiedlichen Seiten des Fragebogens abgefragt werden (ähnlich wie bei der regulären Ankerführung).

In unserem Beispiel also die folgende Fragegruppe auf der zweiten Seite des Fragebogens:

"Wie gut gefällt Ihnen der Markenauftritt dieser Marken?"
- Orangina
- Fanta
- Sinalco
- Sunkist


Alternativen: "Sehr gut" bis "Überhaupt nicht"
(kursiv = ausgeblendete Items, da der Proband diese nicht kennt)

Es ergeben sich also viele Anwendungsbeispiele aus der Möglichkeit, bestimmte Items auf Grundlage einer vorherigen Auswahl ausblenden zu können.

Ein Beispielfragebogen für den von uns genannten beispielhaften Anwendungsfall mit aktivierter "Ausblenden-Funktion" erreichen Sie hier.

Für die Umsetzung gehen Sie wie folgt vor:

1. Gehen Sie bitte zu der Seite in Ihrem Fragebogen, auf der die spezifische Fragegruppe steht, für die bestimmte Items ausgeblendet werden sollen.

WICHTIG: Die ursprüngliche Fragegruppe, in Abhängigkeit derer die spezifischen Fragen gestellt werden, sowie diese spezifische(n) Fragegruppe(n) müssen die selben Items in genau der gleichen Reihenfolge enthalten, d.h. in unserem Beispiel beinhaltet jede betroffene Fragegruppe die Items "Orangina, Fanta, Sinalco, Sunkist" in eben dieser Reihenfolge. Die Option "Fragen rotieren" für die Variation der Reihenfolge im Frontend für Ihre Probanden können Sie bei Bedarf selbstverständlich weiterhin aktivieren.

2. Erstellen Sie am Ende dieser Seite eine neue Gruppe des Typs "text / picture".

3. WICHTIG: Aktivieren Sie für diese Gruppe die Option "Dies ist HTML".

4. Kopieren Sie das folgende Skript in diese Fragegruppe:

Code: Alles auswählen
<script>
hideGroupById("2-2");
if ( eqParseInt('%v1%') == 2) { hideByVariableName('v[4]');}
if ( eqParseInt('%v2%') == 2) { hideByVariableName('v[5]');}
if ( eqParseInt('%v3%') == 2) { hideByVariableName('v[6]');}
</script>


5. Dieses Skript und muss nun in seinen einzelnen Bestandteilen auf Ihre konkrete Struktur des Fragebogens angepasst werden:

5.1. hideGroupById("2-2");

Das erste Argument „hideGroupById("2-2");” sorgt dafür, dass die verwendete Gruppe des Typs „text / picture“, in die das Skript integriert wurde, den Probanden nicht angezeigt wird. Daher muss die Zahl in Klammern (1-1) entsprechend der Nummer der entsprechenden Gruppe angepasst werden. Die Bezeichnung der Textgruppe können Sie dem Backoffice von eQuestionnaire entnehmen; sie wird direkt neben der Gruppe in eckigen Klammern angezeigt. So wird z.B. für die Gruppe [1.10] der Code hideGroupById("1-10") lauten.


5.2. if ( eqParseInt('%v1%') == 2) { hideByVariableName('v[4]');}

Dieses Codebestandteil ist jeweils einmal pro Item, d.h. in unserem Beispiel einmal pro möglicher Marke vorhanden und besteht aus zwei Teilbereichen:

5.2.1 Der erste Bereich if ( eqParseInt('%v1%') == 2) prüft die Bedingung, ob der Proband in der vorherigen Abfrage für das betreffende Item diejenige Alternative ausgewählt hat, die zu einem Ausblenden des identischen Items in der spezifischen Fragegruppe führen soll. In unserem Beispiel würde also geprüft, ob der Proband die Alternative "Nein, kenne ich nicht" für ein bestimmtes Item ausgewählt hat. Diese Funktion bezieht sich demnach immer auf die Items Ihrer ersten Fragegruppe, in Abhängigkeit derer die anderen Fragen gestellt werden sollen.

5.2.1.1 ('%v1%') steht dabei für die zu prüfende Variable, in diesem Beispiel v1 (Orangina).

Die Variablenbezeichnung ersetzen Sie folglich durch die Bezeichnung der ersten Variablen Ihrer Fragegruppe, in Abhängigkeit derer die Items ausgeblendet werden. Die Bezeichnung der Variablen ist ebenfalls im Backoffice von eQuestionanire direkt neben dem entsprechenden Item zu finden.

5.2.2.2 == 2 steht für den Wert der Antwortalternativen, bei der die Items in der spezifischen Fragegruppe ausgeblendet werden sollen. In unserem Beispiel entspricht der Wert 2 der Antwort "Nein, kenne ich nicht". Dieser Wert ist ebenfalls im Backoffice von eQuestionnaire zu finden. Diese Angabe ist für alle weiteren Argumente identisch.

5.2.2 Der zweite Bereich { hideByVariableName('v[4]');} ist das Kernargument der Funktion und sorgt dafür, dass der Proband in Ihrer weiteren, spezfischen Abfrage, das entsprechende Item nicht angezeigt bekommt, für den Fall dass er die o.g. Antwortalternative ausgewählt hat.

Entsprechend steht ('v[4]');} für die erste Variable in Ihrer spezifischen Fragenbatterie, in unserem Beispiel also das Item "Orangina" bei der Frage nach dem Gefallen des Markenauftritte und der Codebereich bewirkt das Ausblenden des entsprechenden Items in der spezifischen Fragegruppe, in dem Falle in dem der Proband diese Softdrinkmarke gar nicht kennt (also die Variable ==2 ist).

Wie bereits erläutert ist es aus diesem Grunde wichtig, dass die angesprochenen Items in beiden Fragengruppen die gleiche Reihenfolge besitzen.

"Übersetzt" sagt dieser gesamte Codebereich if ( eqParseInt('%v1%') == 2) { hideByVariableName('v[4]');} also aus: Wenn Variable 1 (Orangina) == 2 ("Nein, kenne ich nicht"), dann blende in der Frage in der weiteren Fragegruppe nach dem Gefallen des Markenauftrittes für eben diese Marke "Orangina" aus.


Für jede Ihrer Items, die je nach bestimmter vorheriger Auswahl ein- oder ausgeblendet werden sollen, muss dieses Argument folglich einmal vorhanden sein. D.h. konrekt, Sie gehen alle Items Ihrer ersten Abfrage durch und weisen dieser die Entsprechung in der zweiten, spezifischen Abfrage zu.

Und damit ist die gesamte Umsetzung bereits erfolgt (die wie immer deutlich komplizierter aussieht, als sie ist) :D !

Analog ist diese gesamte Umsetzung von Schritt 1 bis Schritt 5 auch für weitere spezifische Fragengruppen möglich. Sie ersetzen dann im zweiten Bereich des Codes if ( eqParseInt('%v1%') == 2) { hideByVariableName('v[4]');} die Variablenbezeichnung ('v[4]');} mit der Bezeichnung des ersten Items Ihrer weiteren Fragegruppe, den zweiten Code mit dem zweiten Item usw.

Noch ein kleiner Hinweis: Nehmen Sie die Anpassung des Skriptes am Besten erst dann vor, wenn Ihr Fragebogen die finale Struktur besitzt. Die Bezeichnung der Variablen ändert sich, wenn Sie strukturelle Änderungen (Einfügen oder Löschen von Items bzw. Verschieben der Fragenbatterien) vornehmen, sodass Sie das Skript jedes Mal erneut anpassen müssten. Einfacher ist es daher, diese Änderung am Schluss vorzunehmen.

Bei Fragen oder Problemen bei der Umsetzung hilft unser Support-Team gerne weiter! Wir unterstützen Sie bei Bedarf auch bei der Einbindung des Skriptes in Ihren Fragebogen - senden Sie uns hierzu einfache eine E-Mail an support@equestionnaire.de.

Viel Spaß und Erfolg mit der neuen Funktion wünscht
eQuestionnaire Support
Viel Spaß mit eQuestionnaire wünscht Ihnen Ihr Support-Team!
support
Site Admin
 
Beiträge: 472
Registriert: Fr Dez 31, 2004 5:13 am

Re: Items ausblenden oder "Filterführung mal anders"

Beitragvon BBRZ2 am Di Nov 15, 2011 12:45 pm

Guten Tag,

funktioniert diese Anleitung nur mit "Ja-Nein-Antworten" oder auch mit Multiple Choice? D.h. aus einer Liste wurden mehrere Items ausgewählt und diese sollen dann in späteren Fragen wieder auftauchen (z.B. wieder als Multiple choice).

Vielen Dank für eine schnelle Antwort! :roll:
BBRZ2
 

Re: Items ausblenden oder "Filterführung mal anders"

Beitragvon support am Di Nov 15, 2011 2:23 pm

Hallo BBRZ2,

ja das Skript ist analog auch für Gruppen des Typs "Multiple Choice" sowie beliebige andere Fragengruppen bzw. Antwortalternativen einer Rating-Gruppe funktionsfähig.

Als Kriterium zum Ausblenden des Items in späteren Fragengruppen im Falle von Multiple Choice wird dann der Wert "0" in das Skript eingetragen, d.h. das betreffende Item wird immer dann ausgeblendet, wenn es zuvor in der MC-Gruppe [url]nicht[/url]ausgewählt wurde (siehe Schritt 5 der Anleitung).

Der oben genannte Beispielfragebogen wurde entsprechend um das Beispiel der Auswahl aus verschiedenen Items einer Multiple Choice Gruppe erweitert, sodass Sie die Funktion testen können.

Mit freundlichen Grüßen
eQuestionnaire Support
Viel Spaß mit eQuestionnaire wünscht Ihnen Ihr Support-Team!
support
Site Admin
 
Beiträge: 472
Registriert: Fr Dez 31, 2004 5:13 am


Zurück zu eQuestionnaire Support Forum



cron
Powered by phpBB