- Posts: 89
- Thank you received: 0
Ask the community, share ideas, and connect with other LimeSurvey users!
<script src="/survey/upload/surveys/831211/files/jquery-ui.min.js"></script>
minLength: 5,
minLength: 2,
Gib die PLZ ein <link href="/upload/surveys/831211/files/jquery-ui.min.css" rel="stylesheet" type="text/css" /> <script src="/upload/surveys/831211/files/jquery-ui.min.js"></script> <script src="/upload/surveys/831211/files/jquery.csv.min.js"></script> <script type="text/javascript" charset="utf-8"> $(document).on('ready pjax:complete',function() { var url = "/limeSurvey3x/upload/surveys/831211/files/plzort.csv"; var Names = new Array(); $.get(url,function(data){ fullArray = $.csv.toArrays(data); $(fullArray).each(function(i, item){ Names.push(item[0]); }); $("#question{QID} input[type=text]").autocomplete({ minLength: 2, source: Names }); }); }); </script>
$(document).on('ready pjax:complete',function() { ... });
obviously it was not easier if there arise two more questions.I found it easier with javascript to extract the location string:
<link href="/upload/surveys/{SID}/files/jquery-ui.min.css" rel="stylesheet" type="text/css" /> <script src="/upload/surveys/{SID}/files/jquery-ui.min.js"></script> <script src="/upload/surveys/{SID}/files/jquery.csv.min.js"></script> <script type="text/javascript" charset="utf-8"> $(document).on('ready pjax:complete',function() { // Identify this question var thisQuestion = $('#question{QID}'); // Hide the second input $('.question-item:eq(1)', thisQuestion).hide(); var url = "/upload/surveys/{SID}/files/NAMES_cleaned.csv"; var Names = []; var Coords = { }; $.get(url, function(data){ fullArray = $.csv.toArrays(data); $(fullArray).each(function(i, item){ Names.push(item[0]); Coords[item[0].toLowerCase()] = item[1]; }); // Initiate the Autocomplete plugin $('input[type=text]:eq(0)', thisQuestion).autocomplete({ minLength: 2, source: Names, select: function(event, ui) { $('input[type=text]:eq(1)', thisQuestion).val(Coords[ui.item.value.toLowerCase()].replace(/;/, ' ')); } }).on('change', function(e) { $('input[type=text]:eq(1)', thisQuestion).val(Coords[$.trim($(this).val()).toLowerCase()].replace(/;/, ' ')); }); }); }); </script>