Welcome to the LimeSurvey Community Forum

Ask the community, share ideas, and connect with other LimeSurvey users!

Suffix nach Textfeld in Matrix

  • Sarina22
  • Sarina22's Avatar Topic Author
  • Offline
  • Junior Member
  • Junior Member
More
8 months 2 weeks ago #245672 by Sarina22
Suffix nach Textfeld in Matrix was created by Sarina22
Bitte helfen Sie uns, Ihnen zu helfen und füllen Sie folgende Felder aus:
Ihre LimeSurvey-Version: Version 5.6.14+230403
Eigener Server oder LimeSurvey-Cloud: LimeSurvey Community Edition
Genutzte Designvorlage: LimeSurvey Fruity Theme
==================
Liebe Forums-Mitglieder,
ich möchte in einer Spalte einer Matrix (Texte) nach dem Textfeld ein paar Worte einfügen, quasi einen Suffix. Man soll eine Zahl in das Textfeld eintragen, und danach soll "mal pro..." stehen. Zudem wäre es schön, wenn ich das Textfeld links anstelle von mittig anordnen könnte. Das habe ich schon mit vertical-align und text-align im Quellcode versucht hinzubekommen, aber es soll auch nur in dieser einen Spalte links stehen.
Hier die Papier-Vorlage:

 

Da die restlichen Spalten Checkboxen enthalten sollen, habe ich schon einiges im Quellcode hinzugefügt, auf Basis des Tutorials Matrizen, welches sehr hilfreich ist.
Und da man jeweils nur eine Checkbox ankreuzen soll, sind alle Felder als exclusive programmiert. Dies führt allerdings aktuell noch dazu, dass wenn man zuerst vorne die Zahl einträgt, und danach den Haken bei z.B. "...Tag" setzt, die Zahl wieder gelöscht wird und man sie neu eintragen muss. Da habe ich auch noch keine Lösung gefunden.

Ich hänge das lss hier an. Es handelt sich um die Fragengruppe "Häufigkeiten" und die Frage "Hauf".
 

File Attachment:

File Name: limesurvey...8-09.lss
File Size:81 KB


Vielen Dank schon im Voraus für jeden Tipp oder Hinweis!
Sarina

P.S.: ich weiß, manchmal kann oder sollte man sich beim Programmieren nicht so stark an der Papier-Version orientieren, aber diese Befragung soll sowohl als Papier- als auch Online-Befragung durchgeführt werden, daher wäre es sehr gut, wenn sie nahezu identisch wären.

 

Please Log in to join the conversation.

  • Joffm
  • Joffm's Avatar
  • Offline
  • LimeSurvey Community Team
  • LimeSurvey Community Team
More
8 months 2 weeks ago #245674 by Joffm
Replied by Joffm on topic Suffix nach Textfeld in Matrix
Hallo, Sarina,
zunächst das Lob.
Du hast Dein Anliegen sehr gut beschrieben und auch gleich eine lss angehängt.

Ich vermute Du beziehst Dich auf mein Tutorial und dieses ziemlich "sophisticated" Beispiel.

Dies nur als kurze Rückmeldung vom Mobiltelefon:
Eine Idee wäre, eine Eingabemaske einzubauen mit dem entsprechenden Platzhalter.
Dies findest Du übrigens im Tutorial 2.

Die lange Rückmeldung kommt dann morgen; dann kann ich mich ausführlich damit beschäftigen.

Bis dann
Joffm 

Volunteers are not paid.
Not because they are worthless, but because they are priceless

Please Log in to join the conversation.

  • Joffm
  • Joffm's Avatar
  • Offline
  • LimeSurvey Community Team
  • LimeSurvey Community Team
More
8 months 2 weeks ago #245678 by Joffm
Replied by Joffm on topic Suffix nach Textfeld in Matrix
Hallo, Sarina,
zunächst zur eigentlichen Frage:
Da ja die Einheit eine Einfachnennung ist, habe ich sie auch so angelegt.
Es ist also eine Frage vom Typ "Matrix".
Zwei scripte kommen hinzu,
Zunächst aus "Tutorial 1: Matrizen", Kapitel 4.1.3. um das Textfeld vor die Radio-Buttons zu platzieren
Dann aus "Tutorial 3: Gimmicks", Kapitel 5.2. um die Eingabemaske einzufügen.

Sieht dann so aus:
 

Ich denke, das ist nicht ganz übel.
Ich habe - wie Du siehst - ein altes spanisches Beispiel verwurstet.
Wenn Du meinst, es verwenden zu können, erstelle ich dann ein Beispiel mit Basissprache "deutsch".

Und dann sage ich auch noch etwas zu einigen Klöpsen, die Du Dir in der anderen Fragegruppe geleistet hast.

Bis dann
Joffm

 

Volunteers are not paid.
Not because they are worthless, but because they are priceless

Please Log in to join the conversation.

  • Sarina22
  • Sarina22's Avatar Topic Author
  • Offline
  • Junior Member
  • Junior Member
More
8 months 2 weeks ago #245690 by Sarina22
Replied by Sarina22 on topic Suffix nach Textfeld in Matrix
Hallo Joffm,

vielen Dank für Deine Antworten. Das stimmt, es soll eine Einfachantwortfrage sein, das hatte ich in Kombination mit dem Textfeld nur irgendwie nicht hinbekommen.
Ich hatte Kapitel 9.1.1. aus dem "Tutorial 1: Matrizen" als Vorlage genommen gehabt, aber das Kapitel 4.1.3. wie jetzt von Dir genutzt ist ja viel naheliegender!

Das Beispiel sieht sehr gut aus! Danke! Ich würde es gerne verwenden.
Wenn man eine Zahl einträgt, erscheint dann automatisch der Zusatz "mal pro...", oder müssten das die Befragten selbst hinzufügen? Oder fügt sich das magisch selbst hinzu?
Wenn ich an die Analysephase danach denke wäre es schön, wenn man nur eine Zahl als Ergebnis für den SPSS-Export erhält, deswegen hatte ich überlegt den Text rechts neben dem Eingabefeld zu haben. Klar kann man die Variable im Nachhinein abändern und den Zusatz "mal pro..." entfernen, aber die reine Zahl zu haben wäre praktisch.

Zu den anderen Fragegruppen in dieser Test Umfrage brauchst Du Dich nicht äußern, das hätte ich auch mal löschen können, ist was Altes, womit ich vor einiger Zeit mal was ausprobiert hatte.

Beste Grüße
Sarina

Please Log in to join the conversation.

  • Joffm
  • Joffm's Avatar
  • Offline
  • LimeSurvey Community Team
  • LimeSurvey Community Team
More
8 months 2 weeks ago - 8 months 2 weeks ago #245691 by Joffm
Replied by Joffm on topic Suffix nach Textfeld in Matrix
Hallo, Sarina,
hier Deine Umfrage mit der "neuen" Matrix.
 
 

File Attachment:

File Name: limesurvey...7948.lss
File Size:169 KB


Was ist alles darin?
Zunächst die Darstellung als Matrix.
Dann die Eingabemaske.
Linksbündige Darstellung der Items
Zentrierung der Radio-Buttons.
Unterschiedliche Spaltenbreiten, falls gewünscht.
Check, dass maximal 3-stellige Zahlen eingegeben werden können.
Da durch den hinzugefügten Text die Eingabemaske ja ziemlich vergewaltigt wird, wird in eqQ2 dann dieser entfernt, damit in der Datenbank nur der Wert steht.

Was fehlt?
a. Check, ob ein Teilnehmer einen Wert einträgt, dann aber "noch nie" anklickt.
b. Check, ob ein Teilnehmer keinen Wert einträgt, dann aber "Tag", "Woche", anklickt.

a. Könnte man z.B. abfangen, indem in der Gleichungsfrage eqQ2 noch hinzugefügt wird, dass der Wert in Q2a_SQ001 geleert wird wenn Q2_SQ001==9  (9="noch nie")
b. Das wäre noch ein Validierungspunkt, ähnlich wie der der dreistelligen Zahlen.

Was geht nicht?
Logischerweise können die Items nun nicht in zufälliger Reihenfolge angezeigt werden, da die Textfrage, die ja mittels des scriptes eingefügt wird, in der normalen Reihenfolge vorliegt.

Wichtige Stellen im script
Die Breite der eingefügten Spalte:
Code:
$('.inserted-column-label', qArray).css('width','15%');

Hier das Textfeld eingefügt und gleichzeitig die Maske definiert.
"mal pro" muss dann ins Englische übersetzt werden.
Code:
$('input[type="text"]', this).appendTo($('tr.answers-list:eq('+i+') .text-item', qArray)).mask('##0 mal pro ...', { 
   reverse: true,
   placeholder: "__ mal pro ..." 
});
Und hier wird die Spaltenbreite der einzelnen Spalten bestimmt (sollte zusammen 100% ergeben)
Code:
<style type="text/css">
  .custom-array table.subquestion-list col {
    width: auto !important;
  }
  .custom-array table.subquestion-list thead .column-0 {  width: 50%; }
  .custom-array table.subquestion-list thead .column-1 {  width: 15%; }
  .custom-array table.subquestion-list thead .column-2 {  width: 6%; }
  .custom-array table.subquestion-list thead .column-3 {  width: 6%; }
  .custom-array table.subquestion-list thead .column-4 {  width: 6%; }
  .custom-array table.subquestion-list thead .column-5 {  width: 6%; }
  .custom-array table.subquestion-list thead .column-6 {  width: 11%; }

Okay, jetzt etwas zur den anderen Dingen.
Deine Idee in "Hauf" mit der Mehrfachnennung ist im Grunde recht gut.
Allerdings zielte das Beispiel ja darauf, dass die Texteingabe eine weitere Option zusätzlich zu den anzucheckenden ist.
Und dann gab es die zwei exklusiven Option "Gar nicht" und "keine Angabe".
 
Dann muss ein evtl. eingegebener Text natürlich gelöscht werden.
Die entscheidende Stelle im script ist auch leicht zu finden
Code:
$('.exclusive-item input:checkbox', thisQuestion).on('change', function(e) {
            if($(this).is(':checked')) {
                var thisItem = $(this).closest('.answer-item');
                $(this).closest('tr.subquestion-list').find('.answer-item').not(thisItem).find('input:checkbox').prop('checked', false);
                $(this).closest('tr.subquestion-list').find('input:text').val('');
            }
        });

Also: Wenn ein exclusives Item gecheckt ist, dann wird der Wert (val) des Textes auf "leer" gesetzt.
Wenn Du diese Zeile entfernst, funktioniert auch Dein "Hauf".
Jedenfalls fast. Denn, wenn "Noch nie" gewählt wird, sollte der Text ja geleert werden.
D.h. Du musst diesem Item eine andere Klasse geben, z.B. "exclusive-item2" und dann am Schluss den Text leeren, wenn dieses Item gewählt wurde.
Habe ich auch einmal gemacht (ich bin ja freundlich


Jetzt aber zur ersten Gruppe
F22: Hier wolltest Du wohl des Beispiel der Lückentexte einbauen. Halte ich auch für eine interessante Idee.
Diese Frage "von - bis" lässt sich doch gut mit Drop-Downs lösen.
Es kommt ja nicht auf die Minute an.
Könnte so aussehen.
 
Ist auch drin.

Aber was ist denn dieses?
var thisSelect = $('#question{19776} input[id^="answer"]:eq(0)'); 
Dort stand sicher einmal $('#question{QID}
Wie Du hoffentlich jetzt weißt, sind dies LimeSurvey-spezifische Platzhalter, die immer durch den aktuellen Wert ersetzt werden.
{SID} : SurveyID
{GID} : GruppenID
{QID} : FragenID
{SAVEDID} : ID des Datensatzes in der Antworttabelle
{EXPIRY} : Enddatum der Umfrage (falls angegeben)
und andere.
Das heißt, in scripten wird dies NICHT geändert.
Wenn schon hättest Du $('#question19776 schreiben müssen.
Problem ist ja: Wenn Du die Umfrage kopierst oder exportierst und wieder importierst, werden diese Werte - wenn sie hart hineingeschrieben werden - nicht angepasst.

Und als Letztes:
Du schriebst, dass es einen mixed mode geben soll (paper pencil und online)
Nun, dass sind nun zwei unterschiedliche Methoden und für jede sollte das dafür geeignete Design gewählt werden.
Einer meiner Kunden schickt ebenfalls immer noch Papier, gleichzeitig wird aber auch die Beantwortung online angeboten.
Und das sind zwei Fragebögen mit ganz unterschiedlichem Design, eben an die Arbeitsweise beim Beantworten angepasst
Man kann einen paper pencil-Bogen nicht sklavisch nach online transferieren.
Eher würde es noch umgekehrt gehen.
Bei einem Papierbogen gibt es deutlich mehr Erklärungsbedarf (und man weiß "Papier ist geduldig"); trotzdem wird der Teilnehmer Gott weiß was ankreuzen und hinschreiben.
Im Gegensatz dazu sollte ein Online-Fragebogen mit kurzen Texten auskommen. (Eine Skala, die angezeigt wird, muss nicht im Fragetext noch einmal erklärt werden.) Hier wird ja zusätzlich durch Validierung viel "Unsinn" abgefangen.
Und eben das Prinzip "Eine Frage pro Seite"

Und das Programmierprinzip lautet ja "mobile first".
D.h. Du entwickelst den Fragebogen für ein mobiles Endgerät. Dabei siehst Du bereits, bei welchen Ideen, eine Frage darzustellen, es Probleme gibt.
Verschiebe einmal einen Slider auf einem smartphone  und ähnliches.

Zum Fragebogen-Design dies als zusätzliche Anregung (der Autor war auch lange Zeit hier aktiv und hat viele Ideen eingebracht)
 

File Attachment:

File Name: surveyfrie...8-10.zip
File Size:977 KB


Jetzt mach was draus
Viel Erfolg

Joffm
 

Volunteers are not paid.
Not because they are worthless, but because they are priceless
Last edit: 8 months 2 weeks ago by Joffm.

Please Log in to join the conversation.

  • holch
  • holch's Avatar
  • Offline
  • LimeSurvey Community Team
  • LimeSurvey Community Team
More
8 months 2 weeks ago #245692 by holch
Replied by holch on topic Suffix nach Textfeld in Matrix
das "mal pro Tag", "mal pro Woche", etc. könnte man natürlich auch einfach in die Skalenbeschriftung stecken.

I answer at the LimeSurvey forum in my spare time, I'm not a LimeSurvey GmbH employee.
No support via private message.

Please Log in to join the conversation.

  • Joffm
  • Joffm's Avatar
  • Offline
  • LimeSurvey Community Team
  • LimeSurvey Community Team
More
8 months 2 weeks ago #245694 by Joffm
Replied by Joffm on topic Suffix nach Textfeld in Matrix
Wem erzählst Du das, @holch?
Text + Drop-down reicht völlig.

Aber Sarina möchte ja partout den Papierbogen nachbilden.

​​​​​​Joffm

Volunteers are not paid.
Not because they are worthless, but because they are priceless

Please Log in to join the conversation.

  • Sarina22
  • Sarina22's Avatar Topic Author
  • Offline
  • Junior Member
  • Junior Member
More
8 months 2 weeks ago #245701 by Sarina22
Replied by Sarina22 on topic Suffix nach Textfeld in Matrix
Vielen Dank für Eure Rückmeldungen!! Ich bin jetzt erst sehr spät dazu gekommen, sie mir anzusehen, und werde morgen bzw. spätestens am Montag an der Frage arbeiten. Vielen Dank bis dahin!!!

Please Log in to join the conversation.

Moderators: Joffm

Lime-years ahead

Online-surveys for every purse and purpose