0 votes
in SoSci Survey (dt.) by s109993 (10.2k points)

Hallo,

ich habe auf einer Seite zwei Fragen. Ein Textfeld (S101) und eine Auswahlfrage mit einer Möglichkeit (S102_01).
Nun würde ich gerne die Bedingung schaffen, dass man nur auf die nächste Seite kommt, wenn entweder das Textfeld ausgefüllt wurde ODER der Hacken bei der Auswahlfrage gesetzt wurde.

Ich weiß das es hier eine Anleitung über die individuelle Antwortprüfung (https://www.soscisurvey.de/help/doku.php/de:create:checks-php) gibt, allerdings beinhaltet die nur Auswahlfragen und Matrizen, ohne ODER- Bedingung.

Dementsprechend fehlt mir der php- Code um die Bedingung zu setzen. Jegliche Hilfe ist willkommen :)

1 Answer

+1 vote
by SoSci Survey (305k points)
selected by s109993
 
Best answer

Meine Vermutung wäre, dass Sie eigentlich die Funktion der "Ausweichoption" im Fragetyp "offene Texteingabe" suchen.

Wenn Sie bei der offenen Texteingabe eine Ausaichoption anbieten, dann bekommen Sie genau das: Ein Feld zum Ankreuzen, und wenn es angekreuzt ist, dann muss/kann man nichts mehr in das Eingabefeld hineinschreiben. Wenn Sie für die Frage dann noch eine Antwortpflicht aktivieren, kommt man auch nicht weiter, wenn man nicht entweder Text eingegeben oder ein Kreuzchen gesetzt hat.

by s109993 (10.2k points)
Da haben Sie recht, in dem "original" FB habe ich das auch so gemacht. Allerdings habe ich festgestellt das in der Smartphone Version die Ausweichoption zu breit ist, bzw. zu weit rechts ist und es dann zu Darstellungsfehlern kommt (Textfeld und die Ausweichoption lagen aufeinander). Deshalb habe ich das nachträglich in zwei Fragen aufgeteilt.
by SoSci Survey (305k points)
Okay, wenn es ein Darstellungsproblem auf Mobilgeräten ist, dann müssen wir uns das mal ansehen. Das sollte ja lösbar sein :)
by s109993 (10.2k points)
*push* :)
Brauche immer noch Informationen wie ich entweder die Darstellung ändere oder, wie in der Frage gestellt, einen Code einfüge mit einer ODER- Bedingung. Falls es mehr Informationen bedarf um die Frage zu Antworten, bitte Bescheid geben!
by SoSci Survey (305k points)
Also ... vermutlich habe ich eine einfache Antwort für Sie. Wenn Sie in der Texteingabefrage bei "Weitere Einstellungen" -> "Darstellung" -> "Darstellung" die Option "dynamisch (responsive)" auswählen, dann wander tdie Ausweichoption auf schmalen Bildschirmen (Smartphone) automatisch unter das Eingabefeld.

Wenn Ihnen das nicht reicht, benötigen Sie 2 Komponenten: Eine JavaScript-Komponente, welche das Eingabefeld leert, wenn man das Auswahlfeld markiert:

            document.getElementById("OT03_02a").onchange = function() {
                var input = document.getElementById("OT03_02");
                if (this.checked) {
                    this.valCache = input.value;
                    input.value = "";
                } else if (this.valCache) {
                    input.value = this.valCache;
                }
            }
            document.getElementById("OT03_02").onkeyup = function() {
                var dk = document.getElementById("OT03_02a");
                if ((this.value != "") && (dk.checked)) {
                    dk.checked = false;
                }
            }

In diesem Code wäre das OT03_02a die Kennung des Felds, das man anklicken kann. Und OT03_02 das Texteingabefeld.

Für die Antwortprüfung (s. manuelle Antwortprüfung) müssten Sie dann prüfen, ob das Eingabefeld markiert ist oder ob etwas im Eingabefeld steht:

if (!((value('AB02_01') == 2) or (value('BB03_01') != ''))) {
  repeatPage('warning');
}
by s109993 (10.2k points)
edited by s109993
Klasse Sache, funktioniert beides, danke! Genauso hatte ich mir das vorgestellt.

Willkommen im Online-Support von SoSci Survey.

Hier bekommen Sie schnelle und fundierte Antworten von anderen Projektleitern und direkt von SoSci Survey.

→ Eine Frage stellen


Welcome to the SoSci Survey online support.

Simply ask a question to quickly get answers from other professionals, and directly from SoSci Survey.

→ Ask a Question

...