Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen RevisionVorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
Nächste ÜberarbeitungBeide Seiten der Revision
de:create:questions:suggest [29.01.2015 16:42] adminde:create:questions:suggest [12.01.2022 22:17] – [JavaScript-Anbindung] admin
Zeile 9: Zeile 9:
 Sofern es die Frage erlaubt, etwas anderes als die vorgegebenen Optionen einzutragen, wird diese Eingabe als Text (in einer anderen Variable) im Datensatz gespeichert. Sofern es die Frage erlaubt, etwas anderes als die vorgegebenen Optionen einzutragen, wird diese Eingabe als Text (in einer anderen Variable) im Datensatz gespeichert.
  
-Die Antwortoptionen werden zusammen mit einem Antwortcode und (optional) Suchbegriffen definiert. Die Suchbegriffe sind für den Teilnehmer nicht sichtbar, werden aber bei der Anzeige der Auswahl berücksichtigt: Wenn beispielsweise als Suchbegriff für "Deutschland" auch "Germany" eingetragen ist, erscheint die Auswahloption "Deutschland" auch denn, wenn der Teilnehmer "ger" eingetippt hat. Text und Auswahloptionen können durch einen Tabulator oder ein Semikolon ('';'') getrennt werden. Zwischen numerischem Antwortcode und Text genügt auch ein Leerzeichen.+===== Vor- und Nachteile =====
  
 +Die Texteingabe mit Auswahlempfehlung ist vor allem dann hilfreich, wenn es in einer Frage sehr viele Antwortmöglichkeiten gibt -- und andere Fragetypen wie Dropdown oder sichtbare Auswahl deshalb zu unübersichtlich sind. Weiterhin ist die Auswahlempfehlung intuitiver, wenn neben den vorgegeben Auswahloptionen auch offene Antworten möglich sind.
  
-==== Beispiel für Auswahloptionen ====+Allerdings ist zum Antworten zwingend ein Wechsel von Maus- zu Tastaturbedienung erforderlich -- gerade auf Mobilgeräten ([[:de:create:smartphones|Fragebögen für Mobilgeräte]]) ist eine Dropdown-Auswahl u.U. einfacher zu beantworten. 
 + 
 +Weiterhin geht dieser Fragetyp -- im Vergleich zu einer gewöhnlichen [[select|Auswahlfrage]] -- mit etwas mehr Aufwand bei der Auswertung einher. Denn wenn ein Teilnehmer die vorgegeben Antworten noch verändert oder ergänzt (z.B. "Ich habe kein Handy, weil ich es nicht brauche" statt der Vorgabe "Ich habe kein Handy"), können diese nicht mehr automatisch kodiert werden. 
 + 
 + 
 +===== Auswahloptionen ====
 + 
 +Die Antwortoptionen werden zusammen mit einem Antwortcode und (optional) Suchbegriffen definiert. Text und Suchbegriffe können durch einen Tabulator oder ein Semikolon ('';'') getrennt werden. Zwischen numerischem Antwortcode und Text genügt auch ein Leerzeichen. 
 + 
 +  00 Text der Auswahloption A 
 +  01 Text der Auswahloption B; Suchbegriff B1; Suchbegriff B2 
 + 
 +Die Suchbegriffe sind für den Teilnehmer nicht sichtbar, werden aber bei der Anzeige passender Auswahloptionen berücksichtigt: Wenn beispielsweise als Suchbegriff für "Deutschland" auch "Germany" eingetragen wurde, erscheint die Auswahloption "Deutschland" auch denn, wenn der Teilnehmer "ger" eingetippt hat. 
  
 Die folgenden Auswahloptionen erlauben die Auswahl von 5 Orten. Trägt der Befragte die PLZ eines Ortes ein, erscheint der entsprechende Ort als Auswahlempfehlung: Die folgenden Auswahloptionen erlauben die Auswahl von 5 Orten. Trägt der Befragte die PLZ eines Ortes ein, erscheint der entsprechende Ort als Auswahlempfehlung:
Zeile 23: Zeile 36:
 05 Erding; 85435 05 Erding; 85435
 </code> </code>
 +
 +
 +===== JavaScript-Anbindung =====
 +
 +Für jede Texteingabe mit Auswahlempfehlung wird ein JavaScript-Objekt der Klasse ''SoSciSuggest'' erstellt. Das Objekt ist über ''s2'' erreichbar. Der Name setzt sich aus der Kennung der Frage, einem ''e'' und der zweistelligen Nummer des Eingabefelds zusammen.
 +
 +  * Eine Frage mit der Kennung "TA01" und einem Eingabefeld würde also im JavaScript-Objekt ''s2.TA01a01'' abgebildet.
 +  * Eine Frage mit der Kennung "TS02" und zwei Eingabefeldern würde das erste Eingabefeld im Objekt ''s2.TS02e01'' abbilden.
 +
 +Das Objekt besitzt eine Eigenschaft ''value'', welche den (Text-)Inhalt des Eingabefelds zurückliefert.
 +
 +Darüber hinaus unterstützt das Objekt die Methode ''addEventListener(String //EventID//, Function //Funktion//)'', welches bei Auswahl einer Option (//EventID// ''"change"'') oder bei Tastendrücken im Textfeld (//EventID// ''"keydown"'', ''"keypress"'', ''"keyup"'') die angegebene //Funktion// aufruft.
 +
 +Bitte beachten Sie, dass das JavaScript-Objekt erst am Ende der Seite erstellt wird, Event Handler können also erst nach dem Laden der Seite registriert werden:
 +
 +<code javascript>
 +<script type="text/javascript">
 +<!--
 +window.addEventListener("load", function() {
 +  suggestTA01.addEventListener("change", toogleFilter);
 +  suggestTA01.addEventListener("keyup", toogleFilter);
 +});
 +// -->
 +</script>
 +</code>
 +
 +Mit der Methode ''addExtraOption()'' kann eine zusätzliche Antwortvorgabe definiert werden, die im Datensatz wie eine offene Texteingabe behandelt wird. Dies ermöglicht die dynamische Anpassung der Antwortoptionen während des Ausfüllens.
 +
 +Für gewöhnlich speichert die Auswahlempfehlung beim Ausfüllen der Fragebogen-Seite intern, welche Optionen für einen Suchbegriff vom Server übermittelt wurden. Mit der Methode ''clearCache()'' kann dieser Cache geleert werden -- das ist hilfreich, wenn während des Ausfüllens der Seite neue Antwortoptionen in die **Datenbank für Inhalte** aufgenommen wurden.
de/create/questions/suggest.txt · Zuletzt geändert: 13.01.2022 21:41 von admin
 
Falls nicht anders bezeichnet, ist der Inhalt dieses Wikis unter der folgenden Lizenz veröffentlicht: CC Attribution-Share Alike 4.0 International
Driven by DokuWiki