Welcome to the LimeSurvey Community Forum

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

Matrix auffüllen

  • Joffm
  • Joffm's Avatar
  • Away
  • LimeSurvey Community Team
  • LimeSurvey Community Team
More
2 years 7 months ago #219742 by Joffm
Replied by Joffm on topic Matrix auffüllen
Hallo,
zunächst: Ich kann diese Dopplung in 3.25.16 nicht reproduzieren.
Aber in einem anderen Zusammenhang "Senkrechte Radios in Matrix" hat dieses kleine css geholfen.
Bei mir hat es hier jetzt nichts kaputtgemacht, also schau einfach einmal.
Code:
<style type="text/css">
td.with-select input.form-control { display:none; }
</style>

Aber: Dieses ganze Script ist nun wirklich nicht für "Zurückgehen" geeignet. Siehst Du ja auch bei Dir. Die ganze schöne Spielerei mit den "disabled" Felder ist weg.
Liegt natürlich daran, dass diese auf  "onChange" reagieren.

Wenn dies (css) bei Dir eben nicht funktioniert, kannst Du ja eine Stufe zurückgehen, und die Zeilen der Reihe nach mit Teilfragenrelevanz einblenden.
Zweite Zeile wird gezeigt, wenn !is_empty(M1_Y001_X001) and !is_empty(M1_Y001_X004)
Dritte Zeile wird gezeigt, wenn !is_empty(M1_Y002_X001) and !is_empty(M1_Y002_X004)
...
Man kann es natürlich noch "Feintuning" machen, indem man folgende Bedingungen zusätzlich einbaut:
Wenn X001<3 -> !is_empty(...X002)
Wenn X001<3 AND X002>1 -> !is_empty(...X003)
Bei X001>2 sind X002 und X003 ja irrelevant.

Das wird wohl die Dopplung verhindern, bringt Dich aber nicht weiter bei den "disabled" Feldern.

Langer Rede, kurzer Sinn: Lass das mit dem "Zurückgehen" weg.
Es lockt nur Herrn Alzheimer aus seiner Höhle.
Soll heißen, wenn nach Vorfragen wie "In welchen dieser Länder haben Sie schon einmal Urlaub gemacht?" oder "Welche dieser Fernsehsender kennen Sie?" für jedes gewählte Item eine ganze Latte Fragen kommt, wird man plötzlich sehr vergesslich.
Spätestens beim dritten geht man zurück und reduziert die bereisten oder bekannten Optionen (falls man zurückgehen kann)

Weiter kann ich nichts sagen, da ich im Grunde ein absoluter Laie bin, was javascript angeht.

Joffm

P.S.
Achte bitte darauf, dass bei Deiner Validierungsgleichung keine Leerzeichen am Anfang stehen.
Dann fühlt sich der Expression Manager nicht angesprochen.
Daher:
In javascript und css nach der öffnenden geschweiften Klammer ein Leerzeichen oder einen Zeilenumbruch.
Wenn der Expression Manager anspringen soll, eben kein Leerzeichen.
Wie im Handbuch

Expression: Anything surrounded by curly braces:

  • As long as there is no white space immediately after the opening brace or before the closing curly brace.


 

Volunteers are not paid.
Not because they are worthless, but because they are priceless
The following user(s) said Thank You: agostini
The topic has been locked.
Moderators: Joffm

Lime-years ahead

Online-surveys for every purse and purpose