Welcome to the LimeSurvey Community Forum

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

Vignetten Design

  • lemon_survey
  • lemon_survey's Avatar Topic Author
  • Offline
  • New Member
  • New Member
More
1 year 6 months ago #240836 by lemon_survey
Vignetten Design was created by lemon_survey
Bitte helfen Sie uns, Ihnen zu helfen und füllen Sie folgende Felder aus:
Ihre LimeSurvey-Version: Version 3.28.16+220621
Eigener Server oder LimeSurvey-Cloud: Gehostet über Universität
Genutzte Designvorlage:
==================
Hallo liebes Forum,
ich bin recht neu im Umgang mit Limesurvey und habe eine Frage zum Thema Vignettendesign, also das zufällige Anzeigen von Fragegruppen aus einer Menge von Fragegruppen. Ich habe hier im Forum bereits folgende DIskussion dazu gefunden hier: forums.limesurvey.org/forum/german-forum/120443-vignettendesign und versucht den Code darin umzusetzen. Leider klappt das bei mir nicht und ich weiß nicht wirklich warum.

Ich habe den Code ein wenig angepasst für ein Minimalbeispiel bei dem 2 von 4 Vignetten ausgewählt werden:
<
script type="text/javascript" charset="utf-8">
 
function shuffle ( array ) {
var currentIndex = array .length, temporaryValue, randomIndex;
 
// While there remain elements to shuffle...
while (0 !== currentIndex) {
 
// Pick a remaining element...
randomIndex = Math. floor (Math.random() * currentIndex);
currentIndex -= 1;
 
// And swap it with the current element.
temporaryValue = array /color]currentIndex[color=#009900;
array /color]currentIndex[color=#009900 = array /color]randomIndex[color=#009900;
array /color]randomIndex[color=#009900 = temporaryValue;
}
 
return array ;
}
 
 
$(document).on('ready pjax:scriptcomplete',function(){
// Fill the array (Ich habe das Array auf 4 Fälle gekürzt)
var arr1 =/color][color=#0000ff]"01"[/color][color=#339933],[/color] [color=#0000ff]"02"[/color][color=#339933],[/color] [color=#0000ff]"03"[/color][color=#339933],[/color] [color=#0000ff]"04"[/color][color=#009900;
arr1 = shuffle (arr1);
// slice auch gekürzt um nur zwei fälle auszuwählen

anumbers = '#,' + arr1.slice(0,2). join (',')+ ',';
$('#question{QID} input[type="text"]').val(anumbers);
$('#question{QID}').hide();
});
</script>

Die Fragegruppen habe ich dann jeweils entsprechend mit der Relevantgleichung {
strpos( Q0 , ',03,')} bzw. 01, 02, .... versehen.
Leider werden mir allerdings von meinen Vignetten keine angezeigt.
Kann mir hier jemand weiterhelfen? Oder einen alternative Lösung vorschlagen? Ich habe lss File angehängt.


Liebe Grüße
  • Please Log in to join the conversation.

    • holch
    • holch's Avatar
    • Offline
    • LimeSurvey Community Team
    • LimeSurvey Community Team
    More
    1 year 6 months ago #240841 by holch
    Replied by holch on topic Vignetten Design
    Idealerweise hängt man in solchen Fällen immer einen LSS-Export der Umfrage an. Einfach die Umfrage kopieren, alles rauslöschen was f6ur die Problemstellung nicht gebraucht wird, Fragen anonymisieren falls notwendig, als LSS exportieren und dann hier anhängen.

    Ich meine, in deinem Code ist ja jede Menge Müll enthalten. Keine Ahnung wo der herkommt, ob das wirklich dein Code ist (dann wundert es mich nicht, dass es nicht funktioniert) oder das Forum hat das eingefügt (vor allem "color"). Das macht es schwer deinen Code zu lesen.

    Und ohne die Struktur deine Umfrage zu kennen ist es natürlich auch schwierig irgendwas zu sagen.

    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.

    • lemon_survey
    • lemon_survey's Avatar Topic Author
    • Offline
    • New Member
    • New Member
    More
    1 year 6 months ago #240845 by lemon_survey
    Replied by lemon_survey on topic Vignetten Design
    Oh ich dachte ich hätte den .lss export angehängt, hier ist er nun:

     

    File Attachment:

    File Name: limesurvey...2-24.lss
    File Size:19 KB


    den Code habe ich wie gesagt aus diesem Forumsbeitrag "geklaut": forums.limesurvey.org/forum/german-forum/120443-vignettendesign   somit ist er nicht von mir ich habe nur für ein Minimalbeispiel die Arraylänge angepasst. Ich bin auch kein javascript Profi, deswegen kann ich leider schlecht sagen was davon nützlich ist und was nicht. Ich dachte der Code implementiert eine Funktion, die ein array mischt, und dann daraus ein Liste zurückgibt, mit der man dann die Fragegruppen auswählen kann.

    LG
  • Please Log in to join the conversation.

    • Joffm
    • Joffm's Avatar
    • Offline
    • LimeSurvey Community Team
    • LimeSurvey Community Team
    More
    1 year 6 months ago - 1 year 6 months ago #240846 by Joffm
    Replied by Joffm on topic Vignetten Design
    Der "Farben-Müll" kommt vermutlich daher, dass er den Code aus einem mit
    Code:
    ...
    umschlossenen script einfach kopiert hat.
    Also Code im Forum immer einbinden, indem man den entsprechenden Button benutzt.

    So, jetzt noch eine Antwort zum Problem:
    Anscheinend hast Du keine Rechte javascript einzusetzen (typisch für Uni-Versionen; der Uni-Admin möchte eben vermeiden, dass Studenten zu viel kreative Gewalt anwenden).
    Dies erkennst Du ja daran, dass Dein eingefügter Code zum großen Teil nach dem Speichern verschwunden ist.

    Du kannst Dein Anliegen aber auch nur mit ExpressionManager lösen.
    Schau Dir dazu einmal mein Tutorial 4 an.

    Joffm

    P.S.
    Du solltest dann auch einmal etwas konkreter werden.
    Wovon reden wir? Wieviel aus wieviel?
    Davon hängt es ja auch ab, ob die ExpressionManager Lösung praktikabel ist.

    Außerdem gibt es ja auch die Lösung mittels der property ".relevanceStatus"

    Volunteers are not paid.
    Not because they are worthless, but because they are priceless
    Last edit: 1 year 6 months ago by Joffm.
    The following user(s) said Thank You: lemon_survey

    Please Log in to join the conversation.

    • lemon_survey
    • lemon_survey's Avatar Topic Author
    • Offline
    • New Member
    • New Member
    More
    1 year 6 months ago #240855 by lemon_survey
    Replied by lemon_survey on topic Vignetten Design
    Ahh das macht sinn! Ich habe mich schon gefragt, warum aus dem Quellcode so viel weggekürzt wird nach dem Speichern.
    Ich schau mir dein Tuturial mal an vielen Dank.
    Genauer geht es bei mir um 60 Vignetten, von denen jeder Teilnehmer 7 angezeigt bekommen soll und dazu je 3 festgelegte Fragen beantworten soll.

    Vielen Dank schon mal!

    Please Log in to join the conversation.

    • Joffm
    • Joffm's Avatar
    • Offline
    • LimeSurvey Community Team
    • LimeSurvey Community Team
    More
    1 year 6 months ago #240870 by Joffm
    Replied by Joffm on topic Vignetten Design
    Hier zwei Beispiele, wie Du dies bewerkstelligen kannst, nur mit eingebauten Funktionen, sprich ExpressionManager/Script.

    1. Das, was ich im Tutorial als Urnenziehung beschrieben habe.
    In der "scharfen" Umfrage sind die beiden Fragen "eMat und EGes natürlich versteckt.
    Und es sind im Anschluss nur acht Gruppen; es ist ja nur ein Beispiel.
     

    File Attachment:

    File Name: limesurvey...3143.lss
    File Size:46 KB


    2. Ein Beispiel mit ".relevanceStatus".
    Im Grunde wird nur gezählt, wie oft andere Gruppen bereits erfragt wurden; wenn es genügend sind, ist Schluss.
    Erklärt ist es hier
    [url] forums.limesurvey.org/index.php/forum/ge...ellen?start=6#219974 [/url]

     

    File Attachment:

    File Name: limesurvey...4146.lss
    File Size:22 KB


    Joffm

    Volunteers are not paid.
    Not because they are worthless, but because they are priceless
  • Please Log in to join the conversation.

    • holch
    • holch's Avatar
    • Offline
    • LimeSurvey Community Team
    • LimeSurvey Community Team
    More
    1 year 6 months ago #240876 by holch
    Replied by holch on topic Vignetten Design
    sehr spannender Ansatz, Joffm. Ich glaube grob zu verstehen, was du da machst, muss es mir aber nochmal etwas besser anschauen um es genau zu verstehen. Ich speicher das jedenfalls mal unter Beispiele bei mir ab.

    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
    1 year 6 months ago #240886 by Joffm
    Replied by Joffm on topic Vignetten Design
    Hallo, @holch, meinst Du meine Fingerübung mit den Expressions?

    Es gibt auch noch diese Lösung mit ".gseq".

    Gruppe 0:
    Q0: Irgendwelche Fragen vor den Vignettenfragen

    Gruppe 1: Erste Vignettengruppe
    Q1: Erste Frage dieser Gruppe

    Gruppe 2: Zweite Vignettengruppe
    Q2: Zweite Frage dieser Gruppe
    ...

    Nun kann ich mittels den Gruppenbedingungen:
    Gruppe 1: Q1.gseq-Q0.gseq<8 
    Gruppe 2: Q2.gseq-Q0.gseq<8 
    ...
    meine 7 Gruppen anzeigen.
    Die Subtraktion von Q0.gseq dient dazu, die Formel generell zu halten, da es ja bei zwei oder mehr Gruppen vor den Vignettenfragen Verschiebungen geben würde.
    Jetzt ist das Ergebnis für die ersten Vignettengruppe immer "1".

    Joffm

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

    Please Log in to join the conversation.

    Moderators: holchJoffmtpartner

    Lime-years ahead

    Online-surveys for every purse and purpose