Übersetzungen dieser Seite:
 

JavaScript-Bibliothek SoSciTools

SoSci Survey bindet im Fragebogen automatisch eine JavaScript-Bibliothek SoSciTools ein. Diese kann in JavaScripts innerhalb des Fragebogens verwendet werden.

SoSciTools

Folgende statische Methoden stehen durch SoSciTools zur Verfügung:

Fragebogen-Elemente

  • SoSciTools.getForm() – Liefert das HTML-Formularelement <form> des Fragebogens.
  • SoSciTools.disableInputs() – Deaktiviert alle Eingabe- und Auswahlfelder auf der aktuellen Fragebogen-Seite (z.B. um Fragen nochmals anzuzeigen ohne dass der Teilnehmer noch etwas ändert, s. auch answers())
  • SoSciTools.disableInputs2() – Ersetzt alle Eingabe- und Auswahlfelder durch Grafiken oder Textelemente.

Fragebogen-Steuerung

  • SoSciTools.submitPage() – Die Antworten der aktuellen Seite übermitteln, so als würde der Weiter-Knopf gedrückt. Mit dem Parameter "back" kann auch der Zurück-Knopf aktiviert werden (falls auf der Seite vorhanden), mit "repeat" werden die Antworten übermittelt und die Seite dann wiederholt.

Knöpfe im Fragebogen

  • SoSciTools.submitButtonsHide() – Weiter- und Zurück-Knopf ausblenden
  • SoSciTools.submitButtonsDisplay() – Weiter- und Zurück-Knopf einblenden
  • SoSciTools.showButtons() – Anzeige von Weiter- und Zurück-Knopf bzw. weiteren Knöpfen (Sprachumschalter, Interview abbrechen, Interview unterbrechen) steuern
  • SoSciTools.submitButtonEnable() – Den Weiter-Knopf aktiv oder inaktiv (disabled) schalten

Allgemeine Hilfsfunktionen

SoSciTools.Questionnaire

Die Variable SoSciTools.questionnaire beherbergt ein Objekt der Klasse SoSciTools.Questionnaire. Das Objekt SoSciTools.questionnaire ist auch unter dem Alias s2 verfügbar (window.s2).

Das Objekt unterstützt folgende Methoden:

  • attachCheck() – Registriert eine Funktion zur Prüfung der Eingabe. Die Funktion wird aufgerufen, wenn der Teilnehmer den Weiter-Knopf verwendet.
  • submit() – Die Antworten der aktuellen Seite übermitteln, so als würde der Weiter-Knopf gedrückt.

Darüber hinaus werden die (meisten) Fragen auf der Fragebogen-Seite durch ein JavaScript-Objekt innerhalb von s2 repräsentiert. Dieses ist unter der Kennung der Frage verfügbar. Eine Auswahlfrage mit der Kennung SE01 ist etwa unter s2.SE01 verfügbar. Es handelt sich dabei um ein Objekt der Klasse SoSciTools.Question.

SoSciTools.Question

(Die meisten) Fragen werden durch ein Objekt der Klasse SoSciTools.Question repräsentiert. Dieses Objekt hat die folgenden Eigenschaften:

  • label (lesen) – Liefert die Kennung der Frage
  • type (lesen) – Liefert eine Kennung für den Fragetyp
  • node (lesen) – Liefert das HTML-Element, welches die Frage repräsentiert, normalerweise entspricht das dem Element mit der HTML-ID [Frage-Kennung]_qst.

Darüber hinaus ist die folgende Methode verfügbar:

  • addEventListener() – Listener werden dabei direkt für das HTML-Element der Frage registriert. Der Aufruf s2.AB01.addEventListener() ist äquivalent zu document.getElementById(„AB01_qst“).addEventListener().

Einige Fragetypen (z.B. die Auswahl) lösen ein Ereignis 'response' aus, wenn die Befragten mit der Frage interaktivieren. Das Ereignis (CustomEvent) hat die folgenden Eigenschaften:

  • detail.question{string} Kennung der Frage
  • detail.element{int} Nummer der Option, des Items oder der Teilfrage
  • detail.complete{boolean} Kann die Frage als vollständig beantwortet betrachtet werden
  • detail.optional{int} Wie viele optionale Antworten (z.B. offene Eingabefelder zu den gewählten Optionen) können/sollten ausgefüllt werden? Eine Frage kann vollständig beantwortet sei (z.B. Auswahl einer Option und Eingabe eines Zeichens im offenen Eingabefeld) und dennoch auf weitere Antworten (weitere Zeichen im Eingabefeld) warten.

SoSciTools.Progress

Die Variable SoSciTools.progress enthält ein Objekt der Klasse SoSciTools.Progress und unterstützt die folgenden Methoden:

  • addEventListener() – Registriert eine Funktion für die Ereignisse 'present' oder 'change'.
  • set() – Ändert den angezeigten Prozentwert. Anders als die PHP-Funktion option('progress', ...) hat dies keinen Einfluss auf den Prozentwert, der auf der nachfolgenden Seite angezeigt wird.
  • setWithinPage() – Ändert den angezeigte Wert anteilig innerhalb der aktuellen Seite, wobei angenommen wird, dass der Fortschrittsbalken auf der folgenden Seite anteilig der Seitenzahl im Gesamtfragebogen steigt.
  • setPageMaximum() – Ändert den Wert, mit welchem setWithinPage() arbeitet. Diese JavaScript-Funktion hat genauso wie set() keinen Einfluss darauf, welchen Fortschrittswert die nächste Seite anzeigen wird.
de/create/soscitools.txt · Zuletzt geändert: 09.03.2024 17:14 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