Welcome to the LimeSurvey Community Forum

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

Searchable Dropdown

  • Boldinho
  • Boldinho's Avatar Topic Author
  • Offline
  • New Member
  • New Member
More
3 weeks 15 hours ago #271108 by Boldinho
Searchable Dropdown was created by Boldinho
Bitte helfen Sie uns, Ihnen zu helfen und füllen Sie folgende Felder aus:
Ihre LimeSurvey-Version: 6.15.4
Eigener Server oder LimeSurvey-Cloud: Cloud
Genutzte Designvorlage:
==================
Hallo zusammen,

ich würde gerne eine Searchable Dropdown Frage/Autocomplete Frage zu PLZ und Ortsteilen hinzufügen. Da es viele Antwortmöglichkeiten gibt liegen diese in einer CSV-Datei vor. Als Lösungsansatz bin ich in dem Forum auch schon auf mehrere Beiträge gestoßen (v.a. den hier:  forums.limesurvey.org/forum/german-forum...igen?start=12#194744 ). Diesen habe ich auch versucht zu implementieren, dies ist mir jedoch nicht gelungen. Die Verknüpfung der Dateien mit der Umfrage oder der Code scheinen nicht zu funktionieren.

Vielen Dank für eine Antwort und viele Grüße!

Please Log in to join the conversation.

  • Joffm
  • Joffm's Avatar
  • Offline
  • LimeSurvey Community Team
  • LimeSurvey Community Team
More
3 weeks 14 hours ago - 3 weeks 13 hours ago #271109 by Joffm
Replied by Joffm on topic Searchable Dropdown
Hallo, Du solltest immer zeigen, was genau Du gemacht hast, also lss Export.

"scheint nicht zu funktionieren" sagt ja wenig aus.

Hast Du denn einmal das  Beispiel aus meinem "Tutorial 2: Mehrfachnennungen,..." angeschaut/importiert? Ist irgendwo hier auf Seite 20+-

"Cloud" heißt aber,.dass Du einen Vertrag mit der Limesurvey GmbH gemacht hast, und nicht der Arbeitgeber, die Universität, oder?

Also, schicke den lss Export mit dem von Dir eingebauten Script - gut wäre auch die csv-Datei.

Bis dann 
Jofffm

P.S.
Deutet die Überschrift darauf hin, dass Du ein Dropdown verwenden willst?
Das geht nicht.
Die für das autocomplete benutzten Fragetypen sind "kurzer Text", "mehrfacher kurzer Text", Array(Text)"

Volunteers are not paid.
Not because they are worthless, but because they are priceless
Last edit: 3 weeks 13 hours ago by Joffm.

Please Log in to join the conversation.

  • Boldinho
  • Boldinho's Avatar Topic Author
  • Offline
  • New Member
  • New Member
More
3 weeks 13 hours ago #271110 by Boldinho
Replied by Boldinho on topic Searchable Dropdown
Hallo,

erstmal vielen Dank für die schnelle Antwort. Ich habe das Tutorial schon ausprobiert und das autocomplete funktioniert auch für die Matrix jedoch nicht für die Textdatei. Da ich den Datensatz noch nicht habe, benutze ich die Datei "plz.ort.csv" aus dem Tutorial. Ich habe auch "mehrfacher Kurztext" als Frage ausgewählt.
Weiterhin nutze ich Limesurvey über die Cloud von meinem Arbeitgeber. 

Viele Grüße
Johannes

Please Log in to join the conversation.

  • Joffm
  • Joffm's Avatar
  • Offline
  • LimeSurvey Community Team
  • LimeSurvey Community Team
More
3 weeks 11 hours ago #271116 by Joffm
Replied by Joffm on topic Searchable Dropdown
Hallo,
bitte, beachte die kleinen Unterschiede der scripte für die drei Fragetypen.
In einer "kurze Text"-Frage musst Du nicht auf ein bestimmtes Eingabefeld referieren.
Da genügt  $("#question{QID} input[type=text]").autocomplete({
Bei "mehrfachen kurzen Texten" musst Du sagen, in welchem Feld das autocomplete arbeiten soll
 $("#question{QID} input[type=text]:eq(0)").autocomplete({
Und bei Matrizen musst Du die Spalte angeben
$('#question{QID} .answer-item:nth-child(2) input[type="text"]').autocomplete({

Dann gibt es noch eine Kleinigkeit zu bemerken.
Du hast die QID geändert.
So etwas tut man nicht.
Diese ganzen Systemvariablen {SID}, {GID}, {QID}, {SAVEDID}, {LANG}, usw. dienen doch gerade dazu, dass immer der aktuelle Wert eingefügt wird, auch wenn die Frage, Umfrage kopiert, geändert oder was auch wird.

File Attachment:

File Name: limesurvey...94_J.lss
File Size:22 KB

Hier werden die scripte vom CDN geholt und die plzort von meinem Server. Ich habe es schnell am Laptop gemacht.
 

Joffm 

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

Please Log in to join the conversation.

  • Boldinho
  • Boldinho's Avatar Topic Author
  • Offline
  • New Member
  • New Member
More
2 weeks 6 days ago #271117 by Boldinho
Replied by Boldinho on topic Searchable Dropdown
Hallo,
vielen Dank für deine Antwort. Ich habe die Frage jetzt importiert, jedoch funktioniert das Autocomplete weiterhin nicht. Eigentlich sollte die importierte Frage doch funktionieren - oder muss ich noch etwas Bestimmtes beachten? Außerdem wollte ich fragen, ob es auch möglich ist, die CSV-Datei direkt in LimeSurvey abzulegen und dann darauf zuzugreifen, anstatt über den Server?
Viele Grüße
Johannes
 

Please Log in to join the conversation.

  • Joffm
  • Joffm's Avatar
  • Offline
  • LimeSurvey Community Team
  • LimeSurvey Community Team
More
2 weeks 6 days ago #271122 by Joffm
Replied by Joffm on topic Searchable Dropdown
Du solltest diese Dateien auch in der eigenen Installation speichern.
Das sind immer diese Datenschutz-Geschichten; es müssen ja nicht Deine/Eure IP usw. zum Server des CDN geschickt werden.

Im Tutorial hole ich es trotzdem oft vom CDN, damit man nur die lss importieren muss, und es läuft.

Gut, hier ein Beispiel mit zwei Fragen
1. Wie Du es gezeigt hattest, eine "mehrfache Textfrage"
2. Meiner Meinung nach genügt ja ein einfacher "kurzer Text"
Bemerkung: Im Tutorial ist es "mehrfacher Text", weil ich dort ja mehrere Möglichkeiten 8in einer Frage zeige:
  • das einfache array mit relativ wenigen Elementen - die Namen
  • die csv-Datei mit 10000 Elementen - PLZ
  • noch einmal array mit etwas mehr Elementen - die Länder

Übrigens: 
Bei mir sehen die Einfügelinks so aus
<link href="/lime6/upload/surveys/{SID}/files/jquery-ui.min.css" rel="stylesheet" />
<script src="/lime6/upload/surveys/{SID}/files/jquery-ui.min.js"></script>
<script src="/lime6/upload/surveys/{SID}/files/jquery.csv.min.js"></script>
und
var url = "/lime6/upload/surveys/{SID}/files/plzort.csv";

Du siehst, ich benutze den Platzhalter der SurveyID {SID}, damit dies nicht geändert werden muss - falls das script einmal in einer anderen Umfarge benutzt wird.
Jetzt aber: Bei mir muss dieser Link mit "/lime6" beginnen; das ist das Installations-Verzeichnis auf meinem Server.
Normalerweise sollte es mit "/upload" beginnen.
Daher solltest Du ausprobieren, wie dieser Link bei Dir geformt sein muss.
Am besten mit dem Wizard um ein Bild einzufügen; einfach so tun als ob.
 
Dann weißt Du genau, wie der Link aussieht (statt "images" wird es dann "files" heißen müssen.
 

File Attachment:

File Name: limesurvey...4694.lss
File Size:32 KB


Die minimale Zeichenzahl ist hier auf 5 gesetzt; d.h. der Teilnehmer muss die gesamte PLZ eingeben, bevor etwas kommt.
Kannst Du ja ändern - je nach Sinn und Zweck der Frage.

Bis dann
Joffm





 

Volunteers are not paid.
Not because they are worthless, but because they are priceless
The following user(s) said Thank You: Boldinho

Please Log in to join the conversation.

  • Boldinho
  • Boldinho's Avatar Topic Author
  • Offline
  • New Member
  • New Member
More
2 weeks 19 hours ago #271153 by Boldinho
Replied by Boldinho on topic Searchable Dropdown
Guten Tag, 

vielen Dank die Antwort und für die ausführliche Erklärung. Es funktioniert jetzt auch. 

Viele Grüße
Johannes

Please Log in to join the conversation.

  • Boldinho
  • Boldinho's Avatar Topic Author
  • Offline
  • New Member
  • New Member
More
2 weeks 11 hours ago #271164 by Boldinho
Replied by Boldinho on topic Searchable Dropdown
Guten Tag,

ich habe noch eine ergänzende Frage. Ist es möglich, dass die Auswahl im Eingabefeld begrenzt wird. Das heißt ich möchte nicht, dass freie Antworten zulässig sind, sondern lediglich die Antwortmöglichkeiten aus der CSV-Datei schlussendlich eingetragen werden können. Kann man den bestehenden Code in der Hinsicht verändern?

Vielen Dank und viele Grüße
Johannes 

Please Log in to join the conversation.

  • Joffm
  • Joffm's Avatar
  • Offline
  • LimeSurvey Community Team
  • LimeSurvey Community Team
More
2 weeks 9 hours ago #271168 by Joffm
Replied by Joffm on topic Searchable Dropdown
Gibt vielleicht ein paar Möglichkeiten.
1.
a. Mach eine RegExp in die "Eingabevalidierung"
Dabei kannst Du Dir überlegen, ob Du nur auf 5 Ziffern testest, oder auf 5 Zifferen und dann mindestens ein, aber beliebig viele Buchstaben.
Hier ist ein guter Spielplatz dafür
[url] regex101.com/ [/url]

b. Mach eine Fragenvalidierung.
Dann mit der Funktion "regexMatch".
Als erstes die 5 Ziffern mit z.B. regexMatch('/^\d{5}$/',substr(self,0,5))
Und dann eben noch etwas für Ortsnamen.
Hier kann man dann bessere Meldungen ausgeben

c. Du könntest den Event "close" hinzunehmen, dass nachdem eine PLZ eingegeben wurde (mit obiger RegExp) und dann ein Ort gewählt wurde, das ganze Feld auf "readonly" gesetzt wird.
Dann kann man nicht mehr einfach die Eingabe "63128 Dietzenbach" in "63128 Westrhauderfehn" ändern.
[url] api.jqueryui.com/autocomplete/#event-close [/url]
Also irgendwie so:
Code:
      $("#question{QID} input[type=text]").autocomplete({
        minLength: 5,
        source: PLZ,
        close: function( event, ui ) {
          $('#question{QID} input[type=text]').prop('disabled', true);     
        }
      });

 


2. Hier hat Denis auch noch eine andere Lösung, nämlich
[url] forums.limesurvey.org/forum/can-i-do-thi...trap-dropdown#265906 [/url]
Die Demo-lss muss man auf der Demo-Seite per Rechtsklick herunterladen (sonst gibt es Datensalat)
Sieht nicht schlecht aus.
Dropdown wie gehabt (ohne Editiermöglichkeit)
 
Das Ergebnisfeld (ist ja dann nur eins) wird dann readonly gemacht.
 
Du musst hier halt etwas von der Darstellung der demo abstrahieren.

Joffm

Volunteers are not paid.
Not because they are worthless, but because they are priceless
The following user(s) said Thank You: Boldinho

Please Log in to join the conversation.

Moderators: holchJoffmtpartner

Lime-years ahead

Online-surveys for every purse and purpose