Welcome to the LimeSurvey Community Forum

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

Slider mit Kommentarfeld

  • mi_for
  • mi_for's Avatar Topic Author
  • Offline
  • Junior Member
  • Junior Member
More
3 years 4 days ago - 3 years 4 days ago #214782 by mi_for
Slider mit Kommentarfeld was created by mi_for
Ich würde gerne bei einer Frage mit Slider ("Mehrfache numerische Eingabe") ein Kommentarfeld anfügen. Es gibt natürlich die Möglichkeit eine Frage mit Kommentarfeld (Kurzer oder langer freier Text) danach einzufügen. Ich hätte es jedoch gerne etwas kompakter, sodass der Kommentar möglichst nahe bei dem Slider ist (so wie beim Fragentyp "Liste mit Kommentar").
Nach Suche im Forum habe ich die Möglichkeit gefunden per javascript das Kommentarfeld der nächsten Frage (Kurzer oder langer freier Text) in die Slider Frage zu ziehen (und die nächste Frage zu verbergen).
Aufgrund fehlender js-Kenntnisse bekomme ich das nicht ganz hin. Basierend auf einem Code, den ich in folgendem Thread ( forums.limesurvey.org/forum/german-forum...u-andere-%C3%A4ndern ) gefunden habe, habe ich herumprobiert. Ich scheitere aber (glaube ich) daran, das Kommentarfeld in der Slider Frage zu positionieren.

Code:
<script type="text/javascript" charset="utf-8">    
    $(document).on('ready pjax:scriptcomplete',function(){
 
        // Identify this question and the next question
        var qID = '{QID}';
        var thisQuestion = $('#question'+qID);
        var nextQuestion = $(thisQuestion).nextAll('.text-long:eq(0)');
 
        // Move the next question
        $('??????').append(nextQuestion);
    });
</script>


Ich nutze LS 2.59.1 (Ich weiß es ist veraltet, aber sagen Sie das der IT bei uns)

Danke,
Michael
Last edit: 3 years 4 days ago by mi_for. Reason: Rechtschreibung
The topic has been locked.
More
3 years 4 days ago #214793 by jelo
Replied by jelo on topic Slider mit Kommentarfeld
Die Workarounds für LimeSurvey 3 und 4 sind zu fast 100% nicht auf LimeSurvey Version 2 anzuwenden. Da sich das Templatesystem seit Version 3 komplett geändert hat, ist der HTML-Code völlig anders aufgebaut. Daher prüfen, ob die Workarounds überhaupt für Version 2 geschrieben wurden. Bei Version 2 gibt dann auch noch Unterschiede.
Deine Version 2.59.1 ist von Januar 2017. Da wird es eng, hier noch erfahrene Nutzer zu finden, die das aktiv einsetzen.

The meaning of the word "stable" for users
www.limesurvey.org/forum/development/117...ord-stable-for-users
The topic has been locked.
  • Joffm
  • Joffm's Avatar
  • Offline
  • LimeSurvey Community Team
  • LimeSurvey Community Team
More
3 years 4 days ago #214795 by Joffm
Replied by Joffm on topic Slider mit Kommentarfeld
Gu willst also einfach ein Kommentarfeld darunter setzen?
Gut, das klappt doch mit dem von Dir erwähnten javascript snippet.
Ohne "grpoße" Änderung
1. Ich habe als Kommentar eine Frage vom Typ "langer Text" genommen, wie Du ja auch , also "text-long".

Desweiteren bleibt dies natürlich im script.

// The "Other" sub-question code
var otherCode = 'SQ008';


Da sich der ursprüngliche Thread auf "Sonstige" bezog, heißt die Variable eben "otherCode", ist ja auch egal.
Wichtig ist nur, dass der Teilfragencode hier derjenige ist, hinter dem der Kommentar eingefügt werden soll, also der Code der letzten Teilfrage.

Und dann wird eben hiermit eingefügt, wie es im Original-Script war.

// Move the next question
$('.answer-item[id$="X'+qID+otherCode+'"]', thisQuestion).append(nextQuestion);


Da Du mit einer anderen Version arbeitest, muss das css angepasst werden.
Ich habe einfach einmal dies genommen
Code:
<style type="text/css">
    .answer-item .question-title-container,
    .text-long .questionvalidcontainer,
    .text-long .question-help-container
     {
        display: none;
    }
    .answer-item .answer-container {
        border: 0;
    }
</style>

Dann kommt dies heraus.
 

Joffm

PS. Wenn Du einen anderen Teilfragencode nimmst, kommt eben so etwas heraus.
 


 

Volunteers are not paid.
Not because they are worthless, but because they are priceless
The following user(s) said Thank You: mi_for
The topic has been locked.
  • Joffm
  • Joffm's Avatar
  • Offline
  • LimeSurvey Community Team
  • LimeSurvey Community Team
More
3 years 4 days ago #214797 by Joffm
Replied by Joffm on topic Slider mit Kommentarfeld
Übrigens stimme ich jelo 100% zu.
Durch das veränderte Templatesystem und auch die veränderte Benennung diverser Klassen ist ein Lotteriespiel, ob scripte laufen.
Du kannst natürlich immer ausprobieren, ob ein script "läuft". Hier hattest Du Glück.
Selbst wenn Du hier erfolgreich bist, gibt es immer noch die Anpassung des css.
Gut, nimm ein Webdevelopment-Tool des Browsers, untersuche und passe an. 

Da wird es eng, hier noch erfahrene Nutzer zu finden, die das aktiv einsetzen.

Genau so ist es; ich habe es zwar noch irgendwo installiert, merke aber, dass meine damals erlangten Fertigkeiten jetzt überlagert werden durch die Arbeit mit den neuen Versionen.

Joffm


 

Volunteers are not paid.
Not because they are worthless, but because they are priceless
The topic has been locked.
  • mi_for
  • mi_for's Avatar Topic Author
  • Offline
  • Junior Member
  • Junior Member
More
3 years 4 days ago #214821 by mi_for
Replied by mi_for on topic Slider mit Kommentarfeld
Viiielen Dank. Ihr seid die Besten.
Da ich nur einen Slider habe, hatte ich nicht bedacht, dass der Slider ja eine Antwortoption ist und es somit wirklich 1:1 dasselbe ist wie im Thread, auf den ich verwiesen habe. Wie dumm.
Danke auch für die Hilfe mit dem css.

Dürfte ich evtl. noch fragen, wie ich es schaffe, dass ich über dem Kommentarfeld (und unter dem Slider) einen Text (z.B. den Fragetext der urspünglichen "langer Freitext-frage") einblende?

@jelo&Joffm: Ich weiß und traue mich auch mit der Version schon fast nicht mehr im Forum Fragen zu stellen, aber seid versichert, dass ich, seitdem ich die LS Installation an meinem Unternehmen intensiver nutze, der IT Abteilung mit einem Update in den Ohren liege. Dzt. sieht es nach diesem Sommer aus.
The topic has been locked.
  • Joffm
  • Joffm's Avatar
  • Offline
  • LimeSurvey Community Team
  • LimeSurvey Community Team
More
3 years 4 days ago #214828 by Joffm
Replied by Joffm on topic Slider mit Kommentarfeld
Dann darfst Du den Fragecontainer nicht verstecken.
Dafür machst Du dann ein bisschen css drumherum
Hier mit Farben zur Verdeutlichung.
 

Das war dann dieses
Code:
<style type="text/css">
.answer-item .question-title-container {
    margin-left:20px;
    margin-right:20px;
    background-color:#ccc;
    padding-top:0;
    padding-bottom:0;
    color: red;
  }
    .text-long .questionvalidcontainer,
    .text-long .question-help-container
     {
        display: none;
    }
    .answer-item .answer-container {
        border: 0;
        padding-top:1em;
    }
</style>

Rest ist Dir überlassen.

Joffm

Volunteers are not paid.
Not because they are worthless, but because they are priceless
The following user(s) said Thank You: mi_for
The topic has been locked.
  • mi_for
  • mi_for's Avatar Topic Author
  • Offline
  • Junior Member
  • Junior Member
More
3 years 3 days ago #214849 by mi_for
Replied by mi_for on topic Slider mit Kommentarfeld
Super, danke. Kenn mich aus.
The topic has been locked.
  • mi_for
  • mi_for's Avatar Topic Author
  • Offline
  • Junior Member
  • Junior Member
More
2 years 8 months ago - 2 years 8 months ago #218814 by mi_for
Replied by mi_for on topic Slider mit Kommentarfeld
Sorry, dass ich das Thema noch einmal öffne.
Aber mittlerweile ist das System upgedated (auf LS 3.25.17) und klarerweise gehen ein paar Sachen nicht mehr.
Könntet ihr mir noch einmal aushelfen zwei Probleme zu beheben.
1) Das in der alten Version gelöste Problem geht nun nicht mehr. Ich schaffe es trotz vieler Versuche und Nachsehen im .css der Fragengruppenvorschau nicht den Rand des Fragencontainers (Kommentarfeld, siehe Bild unten) wegzubekommen. Wo liegt da das Problem?
 

Code ist:
Code:
<script type="text/javascript" charset="utf-8">    
    $(document).on('ready pjax:scriptcomplete',function(){
 
        // The Slider sub-question code
        var otherCode = 'SQ001';
 
        // Identify this question
        var qID = '{QID}';
        var thisQuestion = $('#question'+qID);
        var nextQuestion = $(thisQuestion).nextAll('.text-long:eq(0)');
 
        // Move the next question
        $('.answer-item[id$="X'+qID+otherCode+'"]', thisQuestion).append(nextQuestion);
    });
</script>
<style type="text/css">.answer-item .question-title-container {
  margin-left:40px;
  margin-right:40px;
  background-color:white;
  padding-top:0;
  padding-bottom:0;
  color:black;
  }
  .row .text-long .question-valid-container,
  .row .text-long .question-container {
        display: none;
    }
  .answer-item .answer-container,
  .answer-item .answer-item {
        padding: 10px;
        padding-left: 20px;
    }
  .answer-item .answer-container {
        border: 0;
    }
  .slider-container {
    margin-bottom:0em;
  }
</style>



2) Die zweite Frage ist relativ ähnlich, daher erlaube ich mir das hier auch gleich anzufügen. Ich habe versucht die Logik von oben in einer anderen Umfage auch zu nutzen. Ich will wieder eine Frage mit Kommentar an eine vorige Frage so anhängen, dass sie als zusammengehörig gesehen werden (wie oben). Nur ist es diesmal eine Matrixfrage davor. Ich habe versucht den Code anzupassen, doch irgendwie sehe ich nicht was ich falsch mache.
 

Code dazu ist:
Code:
<script type="text/javascript" charset="utf-8">    
    $(document).on('ready pjax:scriptcomplete',function(){
 
        // The Slider sub-question code
        var otherCode = 'SQ001';
 
        // Identify this question
        var qID = '{QID}';
        var thisQuestion = $('#question'+qID);
        var nextQuestion = $(thisQuestion).nextAll('.text-long:eq(0)');
 
        // Move the next question
        $('.answer-item[id$="X'+qID+otherCode+'"]', thisQuestion).append(nextQuestion);
    });
</script>
<style type="text/css">.answer-item .question-title-container {
  margin-left:40px;
  margin-right:40px;
  background-color:white;
  padding-top:0;
  padding-bottom:0;
  color:black;
  }
  .row .text-long .question-valid-container,
  .row .text-long .question-container {
        display: none;
    }
  .answer-item .answer-container,
  .answer-item .answer-item {
        padding: 10px;
        padding-left: 20px;
    }
  .answer-item .answer-container {
        border: 0;
    }
</style>

Ich bin schon gespannt, wo ich mich diesmal vertan habe.
Danke
Last edit: 2 years 8 months ago by mi_for. Reason: Bilder nicht angezeigt
The topic has been locked.
  • Joffm
  • Joffm's Avatar
  • Offline
  • LimeSurvey Community Team
  • LimeSurvey Community Team
More
2 years 7 months ago #219041 by Joffm
Replied by Joffm on topic Slider mit Kommentarfeld
So, ich habe mich einmal damit beschäftigt.
Dieses Phänomen tritt ja nur im Theme "fruity" auf.

Gut, mit diesem css habe ich ein recht ansprechendes Ergebnis erzielt.
Code:
<style type="text/css">.answer-item .question-title-container {
  margin-left:7%;
  width:86% !important;
  background-color:silver;
  padding-top:0;
  padding-bottom:0;
  color:black;
  }
 
 
.answer-item .answer-container {
    border: 0;
       margin-left: 6%;
       width:88%;
}
.slider-container {
    margin-bottom:0em;
}
.komm.question-container {
    background-color: transparent;
    border: none;
    box-shadow:none;
}
</style>

Du siehst, ich habe eine neue Klasse ".komm" benutzt.
Diese ist als css-Klasse in der Textfrage einzufügen

 

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
2 years 7 months ago #219042 by Joffm
Replied by Joffm on topic Slider mit Kommentarfeld
Und Deine zweite Frage:
Dieses kleine css-Stückchen
Code:
<style type="text/css">.mat.question-container {
    margin-bottom: 0em;
    border-bottom:0;
    box-shadow:none;
}
.komm.question-container {
    background-color: transparent;
    border-top: none;
    box-shadow:none;
}
</style>

Hier haben also beide Fragen eine zusätzliche Klasse: Die Matrixfrage ".mat", die Kommentarfrage ".komm"

 

Joffm

Volunteers are not paid.
Not because they are worthless, but because they are priceless
The following user(s) said Thank You: mi_for
The topic has been locked.
  • mi_for
  • mi_for's Avatar Topic Author
  • Offline
  • Junior Member
  • Junior Member
More
2 years 7 months ago #219090 by mi_for
Replied by mi_for on topic Slider mit Kommentarfeld
Hallo,

vielen Dank (wiedermal) für die Hilfe.
Danke für den Hinweis, das mit einer Klasse zu lösen. Durch deine Hilfestellungen komme ich langsam dahinter, wie das css-styling funktioniert. Ich habe zwar das Manual durchgesehen, aber das ist irgendwie nicht wirklich ausführlich erklärt.

LG;
Michael
The topic has been locked.
  • holch
  • holch's Avatar
  • Offline
  • LimeSurvey Community Team
  • LimeSurvey Community Team
More
2 years 7 months ago #219109 by holch
Replied by holch on topic Slider mit Kommentarfeld

aber das ist irgendwie nicht wirklich ausführlich erklärt.


Es ergibt auch wenig Sinn im Limesurvey-Manual nochmal zu erklären, wie CSS im allgmeinen funktioniert. Das sind Basics der Webentwicklung die andernorts sehr ausführlich erklärt werden.

Um zu lernen wie CSS funktioniert, würde ich andere Quellen bemühen. Das funktioniert eigentlich immer und überall gleich, für jede Art von "Website" (Limesurvey ist ja auch nichts anderes als eine sehr spezielle Art von Website).

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