0 votes
in Methoden-Fragen by s180253 (140 points)
edited by s180253

Guten Tag,

ich habe vier Fragen, wo ich offen nach der Preisbereitschaft für ein Beispiel frage und den Anfangs- und Endpreis vorgeben möchte, aber dann mithilfe eines Schiebereglers frei wählbar den Preis auswählen lassen möchte innerhalb dieser Preisspanne. Wie kann ich den Schieberegler so einstellen, dass die Sprünge in 1€-Sprüngen stattfinden? Beispielsweise ein T-Shirt von 4,99€ bis 29,99€ und der Schieberegler zeigt dann jeweils an, wenn ich bei 9,99€ oder ähnliches dann bin. Vielen Dank im Voraus!

1 Answer

0 votes
by SoSci Survey (304k points)
edited by SoSci Survey

Jetzt brauchen wir erstmal ein wenig Mathe... Von 4,99 € bis 29,99 € in 1€-Schritten sind 29-4+1 = 26 Schritte.

Stellen Sie also in der Schieberegler-Frage eine Differenzierung von 1..26 ein.

Jetzt müssen wir nur noch von der 1 auf 4,99 € kommen. Dafür addiieren wir 3 (runden nicht vergessen, denn der Schieberegler liefert erstmal Dezimalwerte) und hängen ",99 €" dran.

var formatter = function(value, reversed) {
  if (value < 0) return "";
  return String(Math.round(value + 3)) + ",99 €";
}
by s180253 (140 points)
Wenn ich die Differenzierung von 1-26 einstelle, wird mir der Regler nur von 0-5€ ermöglicht.

Ich habe auf die Seite ein HTML-Code getan, damit der Regler mir die Werte in Euro anzeigt. Die Differenzierung habe ich von 1-150 gestellt, damit man die Werte zwischen 0€ und 30€ (zu dem Zeitpunkt habe ich es mit ganzen Beträgen probiert) auswählen kann. Dafür habe ich den Code genommen:
<script type="text/javascript">
<!--
formatter = function(value, reversed) {
  if (value < 0) return "";
  return String(Math.round((value - 1) / 100 * 20)) + " €";
}
SoSciSliders.setFormat(formatter);
// -->
</script>

Wie integriere ich das mit dem Code, den Sie dort oben geschrieben haben? Bzw. wo muss ich diesen einfügen? Bei der Frage selbst oder bei der Seite nachher erst?
by SoSci Survey (304k points)
> Wenn ich die Differenzierung von 1-26 einstelle, wird mir der Regler nur von 0-5€ ermöglicht.

Durch das +3 sollten genau die von Ihnen gewünschten Werte daraus werden. Ich bin ziemlich sicher, dass der Code oben das macht, was Sie gerne hätten :)

> Wie integriere ich das mit dem Code, den Sie dort oben geschrieben haben?

Sie sehen die 4 Zeilen, die eine Variable "formatter" definieren, die dann eine Funktion enthält? Diese hier

formatter = function(value, reversed) {
  if (value < 0) return "";
  return String(Math.round((value - 1) / 100 * 20)) + " €";
}

Das ersetzen Sie durch den Code, den ich oben gepostet habe.
by s180253 (140 points)
Es hat funktioniert, vielen vielen Dank!!!
by SoSci Survey (304k points)
Denken Sie bitte daran, dass Sie im Datensatz bei 4,99 € den Code 1 gespeichert haben u.s.w.. Nicht, dass das bei der Auswertung durcheinander gerät.
by s180253 (140 points)
Vielen Dank für den Hinweis!!

Willkommen im Online-Support von SoSci Survey.

Hier bekommen Sie schnelle und fundierte Antworten von anderen Projektleitern und direkt von SoSci Survey.

→ Eine Frage stellen


Welcome to the SoSci Survey online support.

Simply ask a question to quickly get answers from other professionals, and directly from SoSci Survey.

→ Ask a Question

...