Welcome to the LimeSurvey Community Forum

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

Rangfolge trotz Filter nicht funktionsfähig

  • Almondia
  • Almondia's Avatar Topic Author
  • Offline
  • New Member
  • New Member
More
3 years 10 months ago #200514 by Almondia
Hallo Zusammen,

ich nutze die letzte Version von Limesurvey Pro.

Ich habe 2 Filterprobleme.

1: In meiner Umfrage sind 2 Fragen mit Rangfolgen (verpflichtend). Bei beiden habe ich über Min und Max Eingabe auf 1 bzw. 3 gesetzt, also es muss mindestens eine Antwort gewählt werden, maximal 3. Dennoch bekomme ich diese Anzeige, wenn ich im Fragebogen auf "Weiter" klicke. Was habe ich falsch gemacht?

2: Ich habe eine Dual-Matrix mit 2 Spalten und 2 Zeilen, also 4x das gleiche Antwortenset in Dropdowns. Ich möchte nun, dass die Antwort aus Spalte 1 nicht mehr im Set aus Spalte 2 auftaucht. Auch hier habe ich es über die Filter Funktion Versucht, leider klappt es nicht. Habe im Ausschluss/Exclusiv Filter die beiden Antwortcodes eingegeben. hilft leider nicht.
Ist das überhaupt möglich? Ohne großen Programmieraufwand?

Vielen Dank und viele Grüße

Anbei 2 Screenshots.
The topic has been locked.
  • Joffm
  • Joffm's Avatar
  • Offline
  • LimeSurvey Community Team
  • LimeSurvey Community Team
More
3 years 10 months ago - 3 years 10 months ago #200519 by Joffm
Hallo,
zu Deiner ersten Frage:
Die Frage darf keine Pflichtfrage sein.
Dann will LimeSurvey, dass alle Items benutzt werden.

Wenn sie nicht verpflichtend ist, wird gemotzt, wenn noch nichts gemacht wurde, und einfach verhindert, dass mehr als drei Items gerankt werden.

Ist ein bisschen inkonsequent, ist aber so.

Und zur zweiten Frage:
Da ich nun nicht gerade der javascript-Guru bin (was ein Euphemismus sondergleichen ist), würde ich zunächst sagen:
Überlegen wir uns ein anderes Design.
Das Ungünstige an der Sache ist zudem, dass es keine Teilfragen-Relevanz bei Einfachnennungen gibt.

Ich werde aber einmal schauen; für ähnliche Designs gibt es irgendwo hier im Forum eine Lösung (soweit ich mich erinnere).
Vielleicht finde ich etwas.

Bis dann
Joffm

Du benutzt die bei LimeSurvey gehostete Version. Das ist dann noch eine Version 3.x.? Oder?

Volunteers are not paid.
Not because they are worthless, but because they are priceless
Last edit: 3 years 10 months ago by Joffm.
The topic has been locked.
  • Joffm
  • Joffm's Avatar
  • Offline
  • LimeSurvey Community Team
  • LimeSurvey Community Team
More
3 years 10 months ago #200527 by Joffm
Nun noch zur zweiten Frage.
Hier würde ich einfach eine Validierung benutzen, dass nicht in beiden Skalen derselbe Wert gewählt wird.
Jetzt kommt aber das nächste Problem. Dual Array hat keine Validierung.

Daher habe ich eben eine weitere Frage in die Gruppe gesetzt, die ich validieren kann.
Es ist eine Frage vom Typ "kurzer Text".

Schau es Dir einfach einmal an.






File Attachment:

File Name: limesurvey...4667.lss
File Size:21 KB



Jetzt kommt es nur noch darauf an, wie Du Deine Umfrage präsentieren willst.
Ich hoffe, Du beherzigst alles, was es zu "guten Umfragen" gibt, und nutzt hier die Methode "Gruppe für Gruppe", wobei in jeder Gruppe nur eine Frage ist.
So hast Du die Freiheit, einerseits "eine Frage pro Seite" darzustellen, andererseits aber auch einmal mehrere auf einer Seite, wie hier benötigt.

Zugegeben, es ist nicht die tollste Lösung. Aber zunächst einmal eine funktionierende.

Joffm

Volunteers are not paid.
Not because they are worthless, but because they are priceless
The topic has been locked.
  • Joffm
  • Joffm's Avatar
  • Offline
  • LimeSurvey Community Team
  • LimeSurvey Community Team
More
3 years 10 months ago #200539 by Joffm
Hallo,
irgendwie war ich durch Deine Idee, dies mit einer Dual Matrix zu machen, etwas vernagelt.

Es geht doch viel einfacher mit einer Matrix(Texte).
Das hier schon oftmals gezeigte javascript-snippet macht auch hier eine Drop-Down-Darstellung.





Hier das javascript, welches Du in den Fragentext einfügst (im Quellcode-Modus)
Code:
<script type="text/javascript" charset="utf-8">
  $(document).on('ready pjax:scriptcomplete',function(){
    var thisQuestion = $('#question{QID}');
 
    // Insert selects
    $('.answer-item.answer_cell_X001', thisQuestion).addClass('with-select').append('<select class="inserted-select form-control list-question-select">\
                          <option value="0">Bitte wählen...</option>\
                          <option value="1">Privater PKW</option>\
                          <option value="2">Carsharing-PKW</option>\
                          <option value="3">Bus, Bahn</option>\
                          <option value="4">Fahrrad</option>\
                          <option value="5">Zu Fuß</option>\
                        </select>'); 
    $('.answer-item.answer_cell_X002', thisQuestion).addClass('with-select').append('<select class="inserted-select form-control list-question-select">\
                          <option value="0">Bitte wählen...</option>\
                          <option value="1">Privater PKW</option>\
                          <option value="2">Carsharing-PKW</option>\
                          <option value="3">Bus, Bahn</option>\
                          <option value="4">Fahrrad</option>\
                          <option value="5">Zu Fuß</option>\
                        </select>'); 
 
    // Listeners
    $('.inserted-select', thisQuestion).on('change', function(i) {
      if($(this).val() != '') {
        $(this).closest('.answer-item').find('input:text').val($.trim($('option:selected', this).text())).trigger('change');
      }
      else {
        $(this).closest('.answer-item').find('input:text').val('').trigger('change');
      }
    });
 
    // Returning to page
    $('.with-select input:text', thisQuestion).each(function(i) {
      var thisCell = $(this).closest('.answer-item');
      var inputText = $.trim($(this).val());
      var selectval = $('select.inserted-select option', thisCell).filter(function () { return $(this).html() == inputText; }).val();
      $('select.inserted-select', thisCell).val(selectval);
    });
 
    // Clean-up styles
    $('select.inserted-select', thisQuestion).css({
      'max-width': '100%'
    });
    $('.with-select input:text', thisQuestion).css({
      'position': 'absolute',
      'left': '-9999em'
    });
  });
</script>

Du siehst, wo Du anpassen musst.
Natürlich die Items.
Und Du siehst, dass ich die Y-Achse mit Y001, Y002,... codiert habe, die X-Achse mit X001, X002,...
Das macht alles übersichtlicher.

Und die Validierung ist dann:
(is_empty(Q1_Y001_X001) or is_empty(Q1_Y001_X002) or Q1_Y001_X001!=Q1_Y001_X002) and (is_empty(Q1_Y002_X001) or is_empty(Q1_Y002_X002) or Q1_Y002_X001!=Q1_Y002_X002)
...


Das "is_empty" dient zur Vermeidung einer anfänglichen Fehlermeldung; wenn beide Felder noch leer sind, sind sie ja auch gleich.

Und hier die Studie:

File Attachment:

File Name: limesurvey...67_2.lss
File Size:21 KB


Viel Erfolg
Joffm

P.S.
Da es sich um eine Matrix(Texte) handelt, werden die Ergebnisse auch in Textform gespeichert; das kann man aber schnell recoden, je nachdem in welchem Tool Du die Analyse fertigen willst.

Volunteers are not paid.
Not because they are worthless, but because they are priceless
The topic has been locked.
  • holch
  • holch's Avatar
  • Offline
  • LimeSurvey Community Team
  • LimeSurvey Community Team
More
3 years 10 months ago #200543 by holch
Joffm hat dir ja schon einige Tips gegeben.

Hier noch einer für die Zukunft:

ich nutze die letzte Version von Limesurvey Pro.


Das ist eine recht ungünstige Versions-Angabe, aus verschiedenen Gründen:
- Viele von uns haben hier LS in der CE-Version, wissen also nicht auf welcher Version Limesurvey Pro im Moment gerade ist
- Morgen kann sich die Version ja schon wieder geändert haben
- Jemand der in ein paar Monaten auf diesen Thread stösst weiss natürlich auch nicht, auf welcher Version der Thread basiert.

Also, idealerweise immer unten rechts in der LS Admin die konkrete LS-Version kopieren und hier posten.

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

The topic has been locked.
Moderators: Joffm

Lime-years ahead

Online-surveys for every purse and purpose